Python目录/模块结构和导入

时间:2016-05-01 04:10:39

标签: python python-module

我正在尝试为我的python程序编写一个测试,并且我创建了一个/tests目录,其中/表示项目为root,不是系统根目录

我的所有源文件都在/myProjectName

两个目录都有一个__init__.py文件,但项目根目录没有,两个文件都是空的(我需要__init__.py目录中的tests

我已尝试在/myProjectName/main.py中导入/tests/test_main.py,但它不起作用。

main.py 中构建项目目录或导入test_main.py的正确方法是什么?

3 个答案:

答案 0 :(得分:1)

我建议将tests目录移到项目目录中。然后,当您进行测试时,可以使用此处的答案从父目录导入:Importing modules from parent folder

否则,您可以在运行测试时将$PYTHONPATH设置为指向项目目录。

答案 1 :(得分:1)

我想在此建议nose,因为它会自动检测测试并为您运行

要运行测试,只需执行

$ nosetests
项目目录中的

答案 2 :(得分:1)

为什么不在testmain.py中尝试这一行:

import os
os.chdir("/myProjectName/main.py ")

然后执行脚本。

希望它有效!