Pytest parametrize Я получаю TypeError: отсутствуют необходимые позиционные аргументы
Я пытаюсь использовать pytest.mark.parametrize
import pytest
from django.urls import reverse
from rest_framework import status
from rest_framework.test import APITransactionTestCase
class TestBulkImport(APITransactionTestCase)
@pytest.mark.parametrize('data, expected_response', [
(
{'body': 'data;to;validate'},
{'body': ['error response']}
),
])
def test_bulk_import_validations(self, data, expected_response):
response = self.client.post(reverse('path:to:url'), data=data)
self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
self.assertEqual(response.json(), expected_response)
Я запускаю тестовый пример, используя следующую команду:
pytest path/to/test/file::TestBulkImport::test_bulk_import_validations
Я получаю следующую ошибку:
def _callTestMethod(self, method):
> method()
E TypeError: test_bulk_import_validations() missing 2 required positional arguments: 'data' and 'expected_response'