检查Django测试中的表单错误

问题描述 投票:0回答:2

我想使用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')
django testing error-handling field
2个回答
0
投票

这是一种可以测试它的方法。请注意,您需要调用is_valid函数:

self.assertFalse(form.is_valid())
self.assertEqual(form.errors['password'][0], 'It is invalid')

0
投票

首先,您需要调用is_valid方法,然后检查错误列表是否有特定的错误,如:

self.assertFalse(form.is_valid())
self.assertIn('password', form.errors.keys())
self.assertIn('It is invalid', form.errors['password'])
© www.soinside.com 2019 - 2024. All rights reserved.