Если я использую библиотеку только во время выполнения набора тестов, должна ли она быть в нормальных пакетах или пакетах dev в моем Pipfile?

  • Мы используем встроенный юнит-тест (или оболочки Django) для тестирования проекта Python.
  • В некоторых из этих тестов мы используем библиотеки вроде freezegun или же mock, которые не используются нигде в производственной кодовой базе.
  • Наш CI, который запускает тесты, устанавливает все deps перед тестовым запуском, поэтому обычно мы помещаем их в dev-deps.

Часто ли оставить тех, кто в dev-packages раздел Pipfile, или пакеты, связанные с тестированием, также должны находиться в packages?

1 ответ

Небольшая заметка о mock так как Python v3.3 это часть unittest модуль.

Сказал, что теоретически было бы лучше хранить такие пакеты в dev-зависимости. На практике вы можете игнорировать проблему, если вы

  • у вас тонны зависимостей
  • некоторую зависимость сложно установить (может быть, для этого требуется установленный компилятор C или что-то подобное)
Другие вопросы по тегам