我通过两种方式为我的单元测试创建了用户:
1)为“ auth.user”创建一个大致如下的 fixture:
{
"pk": 1,
"model": "auth.user",
"fields": {
"username": "homer",
"is_active": 1,
"password":
"sha1$72cd3$4935449e2cd7efb8b3723fb9958fe3bb100a30f2",
...
}
}
我漏掉了看似无关紧要的部分。
2)在 setUp 函数中使用“ create _ user”(尽管我宁愿保留 在我的固定装置课上的所有东西) :
def setUp(self):
User.objects.create_user('homer', 'ho...@simpson.net', 'simpson')
注意,两种情况下的密码都是 Simpson。
我已经一次又一次地验证了这些信息是否正确地加载到测试数据库中。我可以使用 User.objects.get 获取 User 对象。我可以用‘ check _ password’验证密码是否正确。用户已激活。
然而,无一例外地,self. client.login (username = ‘ homer’,password = ‘ simson’)失败了。我不明白为什么。我想我已经读过了每一个与此相关的网络讨论。有人能帮忙吗?
单元测试中的登录代码如下所示:
login = self.client.login(username='homer', password='simpson')
self.assertTrue(login)
谢谢。