Интеграционные тесты - Backend
Какую роль выполняют интеграционные тесты?
Проверка корректности работы основных сценариев приложения. Благодаря данным тестам, разработчики Backend могут не сомневаться в изменениях кодовой базы
WARNING
Тестовые сценарии проверяют исключительно бизнес-логику, они не стремятся проверить то, как работает какой-либо из слоёв API
Запуск
Настроить дополнительные ENV переменные Backend:
Переменная Backend Что делает ? PU_TEST_INTEGRATION_CLEAR_DATAУдаление всех связанных с тестом данных, происходит в начале и конце теста. Однако, если указать данную переменную как False, удаление в конце теста происходить не будет - удобно для откладки ошибокPU_TEST_INTEGRATION_PRIVATE_REPO_JSONЭто указание на приватные репозитории в GitLab и GitHub, структура репозиториев соответствует такой же для публичных репозиториев, ссылки на них есть в tests.integration.conftest.pyЗапустить Backend одной из команд, число
workersможет быть произвольным:uvicorn app.main:app --host 0.0.0.0 --port 8555 --log-level info --workers 4 gunicorn app.main:app -b 0.0.0.0:8555 --workers=4 -k uvicorn.workers.UvicornWorker --log-level=infoЗапустить интеграционное тестирование можно командой
pytest tests -v