用户在Django测试用例中未正确创建

时间:2014-06-22 18:29:05

标签: django django-models django-testing

我正在运行一个简单的单元测试来获取用户的tastypie API密钥。为此,我尝试在测试用例中创建一个新用户,我对其进行身份验证并获取其API密钥。 测试用例的代码如下:

def setup(self):
    user = User.objects.create(username='test1',password='pass')


 def test_user_api_key_fetch(self):
    user = User.objects.get(username='test1')
    c = Client()
    response = c.post('/login/',{'username':'test1','password':'pass'})
    print response.content
    self.assertTrue(response.status_code == 200)

此测试在第一行失败,断言无法找到用户。我检查了User.objects.all(),它是空的。更改setup()以包含user.save()或使用User.objects.create_user()来解决此问题。为什么不能找到这个用户?

1 个答案:

答案 0 :(得分:1)

未创建用户,因为未运行setup方法。它应该被称为setUp - 请注意大写U。请参阅Python documentation