我想创建一个 python 包,但我不确定 unittest 目录的最佳位置是什么。在Hitchhikers Guide中,测试被放在实际模块中,以及在这里,而Python Project HowTo提倡将它们放在项目级别的额外目录中。
所以项目应该这样布局(格式A):
MyProject/
|-- setup.py
|-- README
|-- mypackage/
|-- __init__.py
|-- some_module.py
|-- test/
|-- __init__.py
|-- test_module.py
|-- scripts/
|-- script1.py
或像这样(格式 B):
MyProject/
|-- setup.py
|-- README
|-- mypackage/
|-- __init__.py
|-- some_module.py
|-- test/
|-- __init__.py
|-- test_module.py
|-- scripts/
|-- script1.py
在这两种情况下有什么优点/缺点?这是在某处定义的吗?
我想使用 distutils(2) 进行打包(setup.py 和/或 setup.cfg),因此在这些情况下如何构建测试尤其重要。在格式 A 中,单元测试将自动包含在包中(如果定义了整个包),而对于格式 B,单元测试必须以单独的方式指定(我什至不知道)。