我想使用assertFormError测试字段错误。我该如何测试?
在forms.py
中 password = forms.RegexField(max_length=254,
error_messages={'required': _('This is required.')
'invalid': _('It is invalid)}
)
在tests.py
form = UserForm(data=data)
self.assertContains(form['password'].errors, 'It is invalid')
答案 0 :(得分:0)
这是测试它的一种方法。请注意,您需要调用is_valid
函数:
self.assertFalse(form.is_valid())
self.assertEqual(form.errors['password'][0], 'It is invalid')
答案 1 :(得分:0)
首先,您需要调用is_valid方法,然后如果错误列表中包含特定错误,则调用chceck:
self.assertFalse(form.is_valid())
self.assertIn('password', form.errors.keys())
self.assertIn('It is invalid', form.errors['password'])