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 *

第三个导入语句失败。不管我 运行 本地文件还是容器本身,我总是会收到此错误。

我尝试过的事情:

我正在使用命令运行创建一个单独的测试文件

python3 -m unittest <filename>.py

您需要从 src/ 中 运行 unittest 命令,例如:python3 -m unittest ./tests/<filename>.py 或在 运行 从测试文件夹中进行测试时将 pan_tilt_unit 添加到 pythonpath。我会选择前者。