Использование pytest для тестирования записи DRF - PullRequest
0 голосов
/ 08 февраля 2019

Я ищу несколько примеров для проверки моего drf api с pytest.Я сделал несколько приспособлений для создания пользователя и подключения.Есть ли у кого-нибудь руководство / ссылка для реализации теста POST?Это для продукта со следующими полями: имя, описание, цена и категория.

Для теста status_code я написал:

@pytest.fixture
def user():
    username = 'test'
    password = 'test'
    User.objects.user(username=username, password=password)


@pytest.fixture
@pytest.mark.django_db
def client(user):
    token = Token.objects.get(user__username='test')
    client = APIClient()
    client.credentials(HTTP_AUTHORIZATION='Token ' + token.key)
    return client


@pytest.mark.django_db
def test_status(client):
    resp = client.get('/myapi/api/product/')
    assert resp.status_code == 200

И это нормально.

Дляпротестировать продукт создать, я попробовал это:

@pytest.mark.django_db
def test_create(client):
    resp = client.post(
        '/myapi/api/product/',
            {
                'name': 'teste1',
                'description': "Teste1",
                'price': 3.50,
                'category': 1
            },
        format='json'
    )
    assert resp.status_code == 201

но я получаю 400.

...