【发布时间】:2018-03-25 15:26:50
【问题描述】:
我正在进行测试 - 我有一个小表格,在 clean 方法中包含大量逻辑。
我的测试如下所示:
class DependentFormTest(TestCase):
def test_dependent_form_birthdate_out_of_range(self):
form_data = {
'first_name': 'Bill',
'last_name': 'Robusin',
'birth_date': '10/12/1801',
'gender': 'Male',
'relationship': 'dependent',
'street_address_1': '123 Any lane',
'city': 'Billson',
'state': 'WA',
'zip': '50133',
}
form = DependentForm(data=form_data)
self.assertFalse(form.is_valid())
在我的 clean 方法中,我可以访问一些有关当前用户的信息。失败的 sn-p 如下所示:
user_benefit = Benefit.objects.get(user=self.user)
这一行是导致我的测试出错并出现以下错误的原因:
Benefit matching query does not exist
这是真的,因为在测试中“用户”是“无”。
如何在我的测试中设置用户以便我可以测试此表单的有效性?
【问题讨论】:
标签: python django unit-testing testing django-forms