我确信我在这里遗漏了一些显而易见的东西,但这个测试目前失败了:
def test_index_view_returns_correct_html_document(self):
request = HttpRequest()
response = LogIn(request)
expected_html = render_to_string('login.html')
self.assertEqual(response.content, expected_html)
失败并显示错误''HttpRequest'对象没有属性'user''
正在测试的视图中有一段代码可以检查用户当前是否已登录,如果是,则抛出重定向:
if request.user.is_authenticated():
return HttpResponseRedirect(reverse('index'))
我错过了什么?我查看了文档,但似乎无法找到解释。我确信这是显而易见的。或者我做错了。
答案 0 :(得分:0)
您刚刚构建了一个裸请求并将其传递给该函数,因此它没有经过任何中间件 - 包括添加用户对象的身份验证。
您应该使用测试客户端进行此测试,因为它模拟整个请求/响应周期。