Задать вопрос
@MasterCopipaster

Как указать импорты в файле юнит теста когда он лежит не в коренвой директории?

.
├── kernel
│   ├──models
│   │      ├── order.py
│   └──kernel.py
├── main.py
├── tests
│   └──test_kernel.py


Возник такой вопрос, я пишу юнит тест для kernel.py хочу что бы все тесты у меня лежали в папке ./test от корня проекта.
У меня для теста нужно импортировать и создать модель order
когда это работает из main проблем нет я просто пишу
from kernel.models.order import Order
И все хорошо, но когда я пишу это в test_kernel.py то получаю ошибку о том что такова импорта нет.
Логично предположить что когда я в корне проекта запускаю pytest а он стартует ./tests/test_kernel.py тот не может подтянуть импорт потому что для него корневой директорией является ./test/
Разумеется загуглив я нашел что для того что бы использовать относительные пути, надо в импорте просто добавить две точки
from ..kernel.models.order import Order

ImportError: attempted relative import with no known parent package


И тут то ли я дурак - то ли лыжи из рельс плохие, подскажите как сделать нормально импорт что бы можно было в корне запустить pytest?
  • Вопрос задан
  • 127 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы