带有子文件夹的 Python 单元测试发现
-
12-12-2019 - |
题
我的单元测试文件夹是这样组织的。
.
|-- import
| |-- import.kc
| |-- import.kh
| `-- import_test.py
|-- module
| |-- module.kc
| |-- module.kh
| `-- module_test.py
`-- test.py
我只想跑 test.py
运行我的每一个 *_test.py
使用unittest python模块。目前,我的 test.py 包含
#!/usr/bin/env python
import unittest
if __name__ == "__main__":
suite = unittest.TestLoader().discover('.', pattern = "*_test.py")
unittest.TextTestRunner(verbosity=2).run(suite)
python 文档说它应该自动在子文件夹中发现我的测试。但事实并非如此。
目前,它只输出
----------------------------------------------------------------------
Ran 0 tests in 0.000s
OK
我确信这不是我的问题 *_test.py
文件,因为当我将它们移动到根目录中时,它工作正常..我究竟做错了什么 ?
解决方案
添加 __init__.py
在里面 import
和 module
目录。
其他提示
考虑使用 鼻子 而不是香草 unittest
模块,如果您能够切换。你不需要搞乱你自己的 test.py 文件或任何东西;运行的 nosetests
将找到并运行您的所有测试。
不隶属于 StackOverflow