【发布时间】:2015-08-31 16:55:12
【问题描述】:
我正在 Django 中创建一个应用程序,但我遇到了下一个问题:我想在 Django 中为一个视图编写一个测试,但是该视图从 html 接收一个表单,我不知道如何模拟发送表单以测试该视图。
我的观点是下一个:
class EnsaioaBilatuViewTest(TestCase):
def test_ensaioa_bilatu_view(self):
self.client.login(username='admin', password='admin')
response = self.client.post('/url/', {'attr1':'2015-01-01', 'attr2':''})
self.assertEquals(response.status_code, 302)
self.assertEquals(response.context['value'], 0)
我得到的错误是下一个:
self.assertEquals(response.context['value'], 0)
eError: 'NoneType' object has no attribute '__getitem__'
这是怎么发生的?
【问题讨论】:
-
您的问题是什么?如何在测试中将数据发送到视图? testing documentation 很好地解释了这一切。
-
为了更好的理解我改了帖子
-
302 是重定向,它没有上下文。
-
为什么会重定向?
-
因为这是您在成功 POST 后所做的,所以您重定向到另一个页面。
标签: python django forms testing view