ich habe eine Ansichtsmethode, die ich gerne testen würde. Ich liefere die self.client.get-Methode mit den Daten, aber es schlägt fehl, das Formular zu überprüfen. Was mache ich falsch?Wie man einen Django-Test mit einem request.post durchführt?
using django 1.8
python 3.5
dies ist die Ansicht Methode
def saveNewDriverInfo(request):
if request.user.is_authenticated():
form = DriverForm(request.POST)
if form.is_valid():
new_Driver = form.save()
carid = form.cleaned_data['carID']
Car = get_object_or_404(Car, pk=carid)
return redirect('carmanager:carDetails', carID=carid
else:
return HttpResponse("something went wong some where! yes i said wong!")
dies der Testmethode ist
def test_saveNewDriverInfo(self):
self.client.login(username="testuser",password="testuser321")
response= self.client.get(reverse('carmanager:saveNewDriverInfo'),data={'form':{'carID':'1034567','Driver_Last_Name':'daddy','Driver_First_Name':'daddy','Driver_Middle_Initial':'K','entered_by':'king'}})
#self.assertRedirects(response, expected_url, status_code, target_status_code, host, msg_prefix, fetch_redirect_response)
self.assertNotContains(response, 'something went wrong' ,200)
auch diesen Test Arbeit beachten Ursache es die Antwort bekommt ist das, was ich habe. aber die Zeile, die kommentiert wird, ist was ich verwenden möchte
Aber ich kann nicht scheinen, um die Informationen zu der DriverForm zu füttern. jede Hilfe wird sehr geschätzt werden
ich kann nicht glauben, dass ich das nicht gesehen habe !! ....... ive wurde mit get anstelle von post, danke für die antwort wird es versuchen – Blue