Zen of Python
Фотография
нажмите — покажем
нажмите — покажем
Почему тесты находят пакет, который забыли положить в сборку
При структуре, где пакет лежит в корне репозитория, Python может импортировать его прямо из рабочей директории. Тесты проходят, хотя установленный пакет может оказаться неполным.
В разборе структуры проекта предлагают для библиотек рассмотреть каталог src/:
project/
├── pyproject.toml
├── src/
│ └── mypkg/
│ └── __init__.py
└── tests/
Теперь пакет обычно нужно установить, прежде чем импортировать. Это помогает заметить зависимость от файлов, случайно доступных в корне проекта.
Но установка для разработки и установка собранного wheel — разные проверки. Чтобы найти пропущенный шаблон или файл данных, соберите wheel и запустите тесты с ним в чистом окружении вне репозитория.
#python #тестирование
5 · 796 ·