现在我有一个python项目,我在其许多文件夹中编写了单元测试代码,树看起来像:
Project
├── module1
│ ├── submodule1
│ │ ├── base.py
│ │ ├── model.py
│ │ └── tests.py
│ ├── conn.py
│ ├── __init__.py
│ └── tests.py
├── errors.py
├── __init__.py
├── router.py
└── tests.py
您可以看到项目中的许多tests.py
个文件位于模块的根文件夹中。我用鼻子帮我做测试,当我想测试所有这些时,只需在上层文件夹中运行nosetests Project
,一切正常。
接着提出我的问题:我看过龙卷风等项目,将所有测试文件放在一个文件夹中,以便管理它们(我猜),这比我现在做的更好,如果是的,那为什么呢?根据Python的哲学,我的测试方式有什么不对吗?
答案 0 :(得分:1)
我将测试放在/test
文件夹下,与源文件分开。对于那些我不想发送测试代码的情况,它使包装更容易。
答案 1 :(得分:0)
个人而言,我更喜欢将我的测试文件存储到特定的子目录test
中,但我喜欢将测试和代码保持在非常接近的位置,因此我的项目中每个位置都有test
个子目录。
Project
├── module1
│ ├── submodule1
│ │ ├── base.py
│ │ ├── model.py
│ │ └── test
│ │ └── submodule1_test.py
│ ├── conn.py
│ ├── __init__.py
│ └── test
│ └── module1_test.py
├── errors.py
├── __init__.py
├── router.py
└── test
└── errors_test.py
└── router_test.py
非常容易制作避免所有测试目录的包装。