尝试运行测试时没有模块错误

时间:2015-10-07 22:39:34

标签: python python-3.x

我正在尝试将我的项目结构基于this answer。根据回答者的说法,我需要做的就是构建我的应用程序:

project-name
    project_name
        __init__.py
        some_module.py
        some_other_module.py
    tests
        __init__.py
        test_some_module.py
        test_some_other_module.py

但是,运行python3.5 -m unittest discover会导致此错误: ImportError: No module named project_name

我的__init__.py文件是空的,因为我知道这将使python认为一切都是一个包。我知道有一种方法可以使用PYTHONPATH来实现它,但我也明白如果你遵循这个包系统就没有必要使用PYTHONPATH。

我做错了什么?有一个简单的解决方法,还是我需要使用不同的结构或系统来运行测试?

1 个答案:

答案 0 :(得分:1)

根据python Doc:Python Module

的链接

我相信你需要在第一个项目名称根目录中创建一个__init__.py文件。

project-name
__init__.py
project_name
    __init__.py
    some_module.py
    some_other_module.py
tests
    __init__.py
    test_some_module.py
    test_some_other_module.py