Интеграционные тесты - Backend
Какую роль выполняют интеграционные тесты?
Проверка корректности работы основных сценариев приложения. Благодаря данным тестам, разработчики Backend, могут не сомневаться в изменениях кодовой базы
WARNING
Тестовые сценарии проверяют исключительно бизнеслогику, они не стремятся проверить то как работает какой-либо из слоёв API.
Запуск
Настроить дополнительные ENV переменные Backend:
Переменная Backend Что делает ? TEST_INTEGRATION_CLEAR_DATAУдаление всех связанных с тестом данных, происходит в начале и конце теста. Но если указать данную переменную как False, удаление в конце теста происходить не будет - удобно для откладки ошибок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