带有子文件夹的Python单元测试发现


问题内容

我的unittest文件夹是以这种方式组织的。

.
|-- 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__.pyimportmodule目录中添加。