В настоящее время у меня есть проект Django 1.11.Он настроен на работу исключительно как API-интерфейс с использованием Django Rest Framework.
Я пишу модульные тесты, используя в основном APITestCase из rest_framework.test, TestCase из django.test и иногда TestCase из test_plus.
Когда я выполняю свои тесты, я обычно использую такие команды, как
python manage.py test
python manage.py test somemodule.tests.some_test_file.TestClass.specific_test_case
или выше, но с флагом keepdb
для сокращения времени тестирования
python manage.py test --keepdb
python manage.py test somemodule.tests.some_test_file.TestClass.specific_test_case --keepdb
Как постепенно перейти к использованию pytest?
Постепенно я имею в виду долгосрочный переход на pytest иКоманды pytest, но в то же время уже написанные тесты все еще можно использовать в одной команде, потому что мой CICD на CircleCI все еще зависит от тестов, которые нужно пройти.
Я также использую factory-boy, если это уместно.