我正在使用PyDoc.net中的出色示例为向导编写测试。
TestCase中的一种方法未在向导中返回正确的步骤:
class WizardTests(TestCase):
wizard_step_data = (
{
'step2-address': '123 Anywhere Ln.'
'wizard_wizard-current_step': 'step2'
},
)
def test_form_post_success(self):
response = self.client.post('/wizard/new/step2', self.wizard_step_data[0])
wizard = response.context['wizard']
self.assertEqual(response.status_code, 200)
self.assertEqual(wizard['steps'].current, 'step2')
运行此命令时,我会回来:
Traceback (most recent call last):
File "/var/www/app/wizard/tests.py", line 71, in test_form_post_success
self.assertEqual(wizard['steps'].current, 'step2')
AssertionError: 'step1' != 'step2'
我正在使用NamedUrlSessionWizardView,这就是为什么我在self.client.post
上的URL是/wizard/new/step2
的原因,而不是上面示例中的/wizard/
。否则,我将收到/wizard/new
的404或301的信息。
您对造成这种情况的原因有什么想法?