2

这对我来说没有任何意义,当参数相同时,断言怎么会失败?

======================================================================
FAIL: test_register_page_redirects_to_signin_page (forum.tests.test_views.ForumTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/Bryan/work/osqa/forum/tests/test_views.py", line 19, in test_register_page_redirects_to_signin_page
    self.assertRedirects(response, '/accounts/signin/')
  File "/usr/local/lib/python2.7/site-packages/Django-1.2.1-py2.7.egg/django/test/testcases.py", line 345, in assertRedirects
    (url, expected_url))
AssertionError: Response redirected to 'http://testserver/account/signin/', expected 'http://testserver/accounts/signin/'

这是测试:

class ForumTestCase(TestCase):

    def test_register_page_redirects_to_signin_page(self):
        response = self.client.get('/account/register/', follow=True)
        self.assertRedirects(response, '/accounts/signin/')
        self.assertTemplateUsed(response, "auth/signin.html")
        self.assertEqual(response.status_code, 200)
4

2 回答 2

8

它们并不完全相同...你确定这条线

self.assertRedirects(response, '/accounts/signin/')

不应该

self.assertRedirects(response, '/account/signin/')

?

于 2010-08-18T14:17:24.090 回答
6

因为你的论点......一样?

http://testserver/account/signin/
http://testserver/accounts/signin/
                         ^
于 2010-08-18T14:19:41.397 回答