代码之家  ›  专栏  ›  技术社区  ›  AntoineLB

断言后期工作Django

  •  0
  • AntoineLB  · 技术社区  · 6 年前

    我刚刚写了一些关于表单的测试用例,下面是一个:

    def test_department_admin_creation(self):
    
        nb = Department.objects.count()
        response = self.client.post(self.url, {"name" : 'department', "organization" : self.organization})
        self.assertEqual(response.status_code, 200)
        self.assertEqual(nb+1,Department.objects.count())
    

    我想知道为什么最后一个断言不起作用,而status\u代码断言起作用。

     AssertionError: 2 != 1
    

    非常感谢。

    1 回复  |  直到 6 年前
        1
  •  0
  •   AntoineLB    6 年前

    多亏了Daniel Roseman,我想出了解决方案:

    我在post参数中传递了一个“组织”,而表单需要一个整数(组织的id)。 正确的代码是:

        nb = Department.objects.count()
        response = self.client.post(self.url, {"name" : 'department', "organization" : self.organization.id})
        self.assertEqual(response.status_code, 302)
        self.assertEqual(nb+1,Department.objects.count())