Запуск unit-тестов из python-модуля, не расположенного в каталоге с тестируемыми модулями
Существует следующая структура каталогов:
project_dir/
scripts/
script.py
tests/
test.py
Модуль test.py содержит unit-тесты для функций из script.py. Необходимо, используя pytest, запустить test.py из корневого каталога проекта project_dir/. Следовательно, в модуле test.py необходимо импортировать модуль script.py.
Как собственно это сделать?
Пробую запускать так: pytest tests/test.py, в test.py модуль пытаюсь импортировать так: import ..scripts.convert_qserv или же from ..scripts.convert_qserv import * (.. применяю, т.к. видел похожее подтвержденное решение на вопрос со stackoverflow). Собственно выдает ошибку ModuleNotFoundError: No module named 'scripts' в первом случае и ImportError: attemped relative import with no known parent package во втором.
Работаю на Ubuntu 20.04.
Ответы (1 шт):
создайте файл init.py в директории tests. сделайте импорт from scripts.convert_qserv import *