Модульные тесты

Теги: tests 

В модульных тестах следует избегатьвзаимодействия с внешними системами по следующим причинам:

  • взаимодействия могут иметь нежелательные побочные эффекты, в виде отправки писем, сообщений, внесения данных в дб и т.д.
  • нет контроля над внешними службами, что влияет на надежность тестирования
  • взаимодействия меняют состояние среды выполнения, что может привести к результатам, которые нельзя воспроизвести
  • снижается скорость выполнения тестирования
  • внешним службам часто требуются учетки и доступы, что усложняет Тестирование

Решение:

  • отделить логику от внешних зависимостей
  • использовать [тесты-с-имитацией] или #mock объекты

То-же самое, что и [изолированные-тесты]