0

我确定我在这里遗漏了一些非常明显的东西,但是这个测试目前失败了:

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”对象没有属性“用户”而失败

正在测试的视图有这段代码检查用户当前是否登录,如果是则抛出重定向:

if request.user.is_authenticated():
            return HttpResponseRedirect(reverse('index'))

我错过了什么?我查看了文档,但似乎找不到解释。我敢肯定这是显而易见的。或者我做错了什么。

4

1 回答 1

0

您刚刚构建了一个裸请求并将其传递给函数,因此它没有通过任何中间件 - 包括添加用户对象的身份验证。

您可能应该为此测试使用测试客户端,因为它模拟了整个请求/响应周期。

于 2013-07-05T07:24:57.567 回答