Wie von Ed I erwähnt , assertIn
ist dies wahrscheinlich die einfachste Antwort, um eine Zeichenfolge in einer anderen zu finden. Die Frage lautet jedoch:
Ich möchte sicherstellen, dass my result
mindestens das json-Objekt (oder die Zeichenfolge) enthält, das ich als zweites Argument oben angegeben habe, d. H.{"car" : ["toyota","honda"]}
Daher würde ich mehrere Behauptungen verwenden, damit bei einem Fehler hilfreiche Nachrichten empfangen werden. Tests müssen in Zukunft verstanden und gepflegt werden, möglicherweise von jemandem, der sie ursprünglich nicht geschrieben hat. Nehmen wir also an, wir befinden uns in einem django.test.TestCase
:
self.assertIn('car', result)
self.assertEqual(result['car'], ['toyota', 'honda'])
Welches gibt hilfreiche Nachrichten wie folgt:
AssertionError: 'car' not found in {'context': ..., 'etc':... }
AssertionError: Lists differ: ['toyota', 'honda'] != ['honda', 'volvo']
First differing element 0:
toyota
honda
- ['toyota', 'honda']
+ ['honda', 'volvo']