【发布时间】:2016-09-23 03:40:23
【问题描述】:
我有一个想要为其编写测试的 django 应用程序。现在我正在为 url 编写集成测试。
对于我的 signin 测试,我的网址如下所示:
url(r'^signin/$', login_forbidden(signin), name='signin')
我的测试看起来像:
from django.test import TestCase
class SigninTest(TestCase):
def test_signin(self):
resp = self.client.get('/signin/')
self.assertEqual(resp.status_code, 200)
但是我不知道要测试更长的网址,例如我在网址中有一个条目,例如:
url(
r'^ad_accounts/(?P<ad_account_id>[^/]+)/$',
AdAccountDetailView.as_view(),
name='campaigns'
),
如果我对登录页面重复上述测试(替换 resp = self.client.get('/ad_accounts/'))返回失败
======================================================================
FAIL: test_signin (engineoftravel.tests.SigninTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "path/to/project/tests.py", line 7, in test_signin
self.assertEqual(resp.status_code, 200)
AssertionError: 302 != 200
----------------------------------------------------------------------
Ran 1 test in 0.103s
FAILED (failures=1)
【问题讨论】:
标签: python django integration-testing