公式の Django 1.5 チュートリアルの単体テストを採用しています。ListView で空のコンテキストをテストしようとしています。次のエラーが表示されます。
AssertionError: Couldn't find 'No persons are available' in response.
そして、これは私のListViewコードです:
class RsvpListView(generic.ListView):
template_name = 'rsvp_list.html'
context_object_name = 'rsvplist'
def get_queryset(self):
return Person.objects.all()
ここに私の TestCase メソッドがあります:
def test_rvsp_list_view_with_no_persons(self):
response = self.client.get(reverse('myapp:rsvp_view'))
self.assertEqual(response.status_code,200)
self.assertContains(response,"No persons are available.")
self.assertQuerysetEqual(response.context['rsvplist'],[])
しかし、公式のチュートリアルでは、投票に同等の行がありました ( https://docs.djangoproject.com/en/dev/intro/tutorial05/#testing-our-new-view ):
self.assertContains(response,"No polls are available.")
チュートリアルが提供するビューメソッドからの応答に「No polls are available」が保存されている場所がわかりませんが、何らかの理由で合格しますが、私のものはそうではありません。
私のテストメソッドには何が欠けているので、それも合格しますか?