У меня есть каталог проекта, как показано ниже:
bin/
bin/module1/module1.py
bin/module1/settings.py
bin/module1/helpers.py --> This module does not have reference to bin/module1/settings.py
bin/module2/module2.py
bin/module2/settings.py
bin/module2/helpers.py --> This module has reference to bin/module2/settings.py
bin/tests/test_module1.py --> This test imports helpers from bin/module1/helpers.py
bin/tests/test_module2.py --> This test imports helpers from bin/module2/helpers.py
bin/tox.ini
bin/conftest.py
bin/setup.py
setup.py содержит следующее содержимое:
from setuptools import setup, find_packages
setup(
name='my_project',
version='0.0.1',
description='Implement my_project',
long_description='Implement my_project',
author='my_name',
author_email='a.my_name@my_domain.com',
packages=find_packages(exclude=['tests*'])
)
Я использую pytest.
Когда я запускаю test_module1.py
, который ссылается на bin/module1/helpers.py
с использованием маркеров pytest, а bin/module1/helpers.py
не имеет импорта в bin/module1/settings.py
. Тест прошел отлично.
Но когда я запускаю bin/tests/test_module2.py
с использованием маркеров pytest, а bin/module2/helpers.py
импортирует в bin/module2/settings.py
, при запуске этого теста я вижу ModuleNotFoundError: No module named 'settings' error
import settings as settings
E ModuleNotFoundError: No module named 'settings'