我已经知道可以实现一个继承自的类SimpleTestCase
,并且可以通过以下方式测试重定向:
SimpleTestCase.assertRedirects(response, expected_url, status_code=302, target_status_code=200, host=None, msg_prefix='', fetch_redirect_response=True)
但是,我想知道使用 pytest 检查重定向的方法是什么:
@pytest.mark.django_db
def test_redirection_to_home_when_group_does_not_exist(create_social_user):
"""Some docstring defining what the test is checking."""
c = Client()
c.login(username='TEST_USERNAME', password='TEST_PASSWORD')
response = c.get(reverse('pledges:home_group',
kwargs={'group_id': 100}),
follow=True)
SimpleTestCase.assertRedirects(response, reverse('pledges:home'))
但是,我收到以下错误:
SimpleTestCase.assertRedirects(response, reverse('pledges:home'))
E TypeError:assertRedirects() 缺少 1 个必需的位置参数:'expected_url'
有什么方法可以使用 pytest 来验证 Django 的重定向?或者我应该使用继承自的类SimpleTestCase
?