2015-01-29 1 views
0

Я программирую тестовый пример для регистрации пользователя и входа в систему, я тестировал whit postman (chrome), и он работает, но тестовый пример не работает. Я использую djangorestframework-jwt для аутентификации«Не удалось войти в систему с предоставленными учетными данными» (при тестировании)

Тест:

class PublicUserTests(APITestCase): 

    def test_create_account(self): 
     url = "/api/user/create/" 
     data = {'email': '[email protected]', 'nombre': 'Clark', 'password': 'Clark'} 
     response = self.client.post(url, data, format='json') 
     self.assertEqual(response.status_code, status.HTTP_201_CREATED, response.data) 

    def test_login(self): 
     url = "/api/auth/token/" 
     response = self.client.post(url, {"email": "[email protected]", "password": "Clark"}, format='json') 
     print(response.status_text) 
     print(response.content) 
     self.assertEqual(response.status_code, status.HTTP_200_OK, response.data) 

Результат:

Creating test database for alias 'default'... 
.BAD REQUEST 
b'{"non_field_errors":["Unable to login with provided credentials."]}' 
F 
====================================================================== 
FAIL: test_login (user.tests.PublicUserTests) 
---------------------------------------------------------------------- 
Traceback (most recent call last): 
    File "/home/rizotas/Proyects/django/src/rescue/user/tests.py", line 86, in test_login 
    self.assertEqual(response.status_code, status.HTTP_200_OK, response.data) 
AssertionError: 400 != 200 : ReturnDict([('non_field_errors', ['Unable to login with provided credentials.'])]) 

---------------------------------------------------------------------- 
Ran 2 tests in 0.116s 

FAILED (failures=1) 
Destroying test database for alias 'default'... 

спасибо за помощь мне :)

+0

Вы пытались использовать self.client.login()? – tgpatel

+0

да, но он возвращает False, спасибо. – rizotas

+0

Я нашел способ для этих работ, присоединился к двум функциям, но это хорошая практика? – rizotas

ответ

1

Методы испытаний в TestCase не подключен. Поэтому, когда test_login работает, он не видит пользователя от test_create_account.

Вам необходимо создать пользователя перед входом в систему test_login.

 Смежные вопросы

  • Нет связанных вопросов^_^