我正在尝试将测试添加到我的Django 1.8应用程序中,并且在测试时遇到了麻烦,以确保注册顺利通过。我不知道如何调试以查看错误。
设置客户端后,我在代码中进行了以下调用。
class LoginTests(TestCase):
def setUp(self):
self.client = Client()
def test_user_can_select_vegetarian_on_account_create(self):
data = {'username': 'TestUser', 'password1':'pass', 'password2':'pass', 'email':'bad@email.com', 'is_admin':True}
r = self.client.post('/register/', data)
print(r.content)
self.assertTrue(r.context is not None)
print(list(User.objects.all()))
print(r.content)
只是打印一个空白,所以没有任何东西回来,虽然这是一个回应。当我查看状态代码时,我得到一个302。
我不知道如何看出出现了什么问题,所以大多数情况下我只是在研究如何调试这个过程。服务器代码中的打印语句没有显示出来,所以我完全不知道发生了什么。有什么想法吗?
答案 0 :(得分:3)
302状态代码表示重定向,如果您想查看该重定向的内容,则必须添加" follow=True
":
response = self.client.post('/register/', data, follow=True)
顺便说一句......为了调试正在发生的事情我建议你使用像PyCharm这样的IDE,你可以在其中添加断点并逐步完成代码!