将单元测试放在python项目包中的位置?

时间:2013-07-22 08:59:36

标签: python unit-testing package

我想创建一个python包,但我不确定unittest目录的最佳位置是什么。在Hitchhikers Guide中,测试放在实际模块中,以及here,而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

两种情况下有哪些优点/缺点?这是在某处定义的吗?

我想在包装(setup.py和/或setup.cfg)中使用distutils(2),因此在这些情况下如何构建测试尤为重要。在格式A中,单元测试将自动包含在包中(如果定义包作为整体),而对于格式B,单元测试必须以单独的方式指定(我甚至不知道)。

0 个答案:

没有答案