ребят, помогите пожалуйста разобраться с написанием теста
я хотел бы протестировать авторизацию. на моём сайте есть форма входа. после её заполнения и отправки пользователь попадает на страницу с шаблоном rules.html(это в случае если введены правильные логин и пароль) или остаётся на странице с формой входа(это в случае если логин и пароль не правильные)
в моём тесте мне необходимо значение csrfmiddlewaretoken:
class TestAuth(TestCase):
def setUp(self):
self.factory = RequestFactory()
self.user = User.objects.create_user(username='zxcvbn', email='jacob@ru.ru', password='zxcvbn')
def test_auth(self):
response = self.client.post('/accounts/authentication/', {
'csrfmiddlewaretoken:': ???????????????,
'username': 'zxcvbn',
'password': 'zxcvbn',
})
self.assertTemplateUsed(response, 'rules.html') # ok auth
я не понимаю откуда его брать. в других обстоятельствах я могу вытащить его из cookie или DOM. но не в случае теста
на стековерфлоу вот что ответили, но я всё равно не понимаю как решить проблему
вот ещё один мой вариант. тоже не рабочий. потому что тестраннер возвращает OK при том, что пользователя с логином zxcvbn2 не существует:
class TestAuth(TestCase):
def setUp(self):
self.factory = RequestFactory()
self.user = User.objects.create_user(username='zxcvbn', email='jacob@ru.ru', password='zxcvbn')
def test_auth(self):
self.client.login(username='zxcvbn2', password='zxcvbn2')
response = self.client.post('/accounts/authentication/')
self.assertContains(response, 'Правила') # эта фраза есть на странице, которую видит успешно авторизовавшийся пользователь