主要问题是:我是否应该在包中包含我的代码的测试套件?我既不是指测试框架也不是测试工具(例如测试),而是每次运行的基本测试,以检查我的代码的正确性。
我一直关注setuptools tutorial,我有两个模块:nac(代码本身)和tests
。 setup.py
如下所示:
setup(
...
packages = ['nac', 'tests'],
...
)
这就是它在/usr/local/lib/python2.7/dist-packages/
中的安装方式:
dist-packages/
nac/
tests/
我很确定我现在所拥有的不是最终的解决方案,因为tests
包引用了nac
包 - 但你只能通过查看{{1}来解决它。 }} 目录。我在考虑创建一个包含2个子模块的dist-packages
模块:nac
和core
。这是一个好方法吗?有没有一种标准的pythonic方法来解决这个问题?
答案 0 :(得分:4)
最好将测试用例放在主包下面,即nac.tests
。测试用例可以使用绝对导入来加载主nac
包。
nac-project/
nac/
tests/
setup.py
通过这种方式,您可以针对1)本地版本或2)nac
软件包的部署版本运行测试用例。