Python 单元测试 - ModuleNotFoundError
Python unittest - ModuleNotFoundError
试图将这些单元测试脚本添加到 运行,但在每个脚本中我都得到标题中列出的 ModuleNotFoundError。具体来说,所有 3 return
'No module named 'pan_tilt_unit''
我运行在Docker容器中安装这个应用程序。
我的项目结构是:
src/
pan_tilt_unit/
__init__.py
device_handler/
__init__.py
other_files.py
messages/
mqtt/
tests/
test1.py
test2.py
test3.py
run.py
例如,在 test.py 文件中,我在顶部有:
from unittest import TestCase, main
from typing import List
from pan_tilt_unit.device_handler import *
第三个导入语句失败。不管我 运行 本地文件还是容器本身,我总是会收到此错误。
我尝试过的事情:
- 添加了一个 init.py 文件到 /tests 文件夹
我正在使用命令运行创建一个单独的测试文件
python3 -m unittest <filename>.py
您需要从 src/ 中 运行 unittest 命令,例如:python3 -m unittest ./tests/<filename>.py
或在 运行 从测试文件夹中进行测试时将 pan_tilt_unit 添加到 pythonpath。我会选择前者。
试图将这些单元测试脚本添加到 运行,但在每个脚本中我都得到标题中列出的 ModuleNotFoundError。具体来说,所有 3 return
'No module named 'pan_tilt_unit''
我运行在Docker容器中安装这个应用程序。
我的项目结构是:
src/
pan_tilt_unit/
__init__.py
device_handler/
__init__.py
other_files.py
messages/
mqtt/
tests/
test1.py
test2.py
test3.py
run.py
例如,在 test.py 文件中,我在顶部有:
from unittest import TestCase, main
from typing import List
from pan_tilt_unit.device_handler import *
第三个导入语句失败。不管我 运行 本地文件还是容器本身,我总是会收到此错误。
我尝试过的事情:
- 添加了一个 init.py 文件到 /tests 文件夹
我正在使用命令运行创建一个单独的测试文件
python3 -m unittest <filename>.py
您需要从 src/ 中 运行 unittest 命令,例如:python3 -m unittest ./tests/<filename>.py
或在 运行 从测试文件夹中进行测试时将 pan_tilt_unit 添加到 pythonpath。我会选择前者。