Модульные тесты
Теги: tests
В модульных тестах следует избегатьвзаимодействия с внешними системами по следующим причинам:
- взаимодействия могут иметь нежелательные побочные эффекты, в виде отправки писем, сообщений, внесения данных в дб и т.д.
- нет контроля над внешними службами, что влияет на надежность тестирования
- взаимодействия меняют состояние среды выполнения, что может привести к результатам, которые нельзя воспроизвести
- снижается скорость выполнения тестирования
- внешним службам часто требуются учетки и доступы, что усложняет Тестирование
Решение:
- отделить логику от внешних зависимостей
- использовать [тесты-с-имитацией] или #mock объекты
То-же самое, что и [изолированные-тесты]
- [pytest]
- [pytest-asyncio]
- [unittest]