创建了一个简单的项目。我正在使用虚拟环境。项目结构如下:
root:
physical:
test:
__init__.py
test_week.py
__init__.py
week_number.py
在测试文件中,我试图从 week_number.py 模块导入一个函数。导入看起来像这样:
from pytest_mock import mocker
from physical.week_number import get_week_number
def test_get_week_number_1():
with mocker.patch.object(__builtins__, 'input', lambda: '2021.09.24'):
assert get_week_number() == 15
但我收到一个错误ModuleNotFoundError: No module named 'physical'
此外,在测试函数中会自动找到并写入 vsc 导入行,即 自动 vsc 工具可以规定这种依赖关系,为什么测试运行看不到模块?我尝试不通过测试,而只是创建一个单独的文件,然后尝试通过首先导入来运行该函数。同样的错误。
在指定项目路径的系统环境中创建 PYTHONPATH 变量