PyBuilder未执行单元测试咨询:附项目结构与测试代码
解决PyBuilder「No unit tests executed」问题
咱先把问题根源揪出来:PyBuilder默认是按特定文件名规则自动发现测试文件的,你的UsefulThingTest.py不符合它的默认匹配模式,所以才没被检测到。下面给你两种解决办法,按需选就行:
方法一:修改测试文件名(最简单)
PyBuilder默认会识别以下两种命名格式的测试文件:
- 以
test_开头,比如test_useful_thing.py - 以
_test.py结尾,比如useful_thing_test.py
把你的UsefulThingTest.py改成上面任意一种格式,重新运行pyb,测试应该就能被正常执行了。
方法二:自定义测试文件匹配规则(不用改文件名)
如果不想改动文件名,那就在项目根目录的build.py里添加配置,告诉PyBuilder你的测试文件名模式:
- 打开项目根目录下的
build.py - 插入以下代码:
from pybuilder.core import init @init def set_test_file_pattern(project): # 配置匹配所有以Test.py结尾的文件 project.set_property("unittest_file_pattern", "*Test.py")
- 保存后重新运行
pyb,你的UsefulThingTest.py就能被正确识别了。
额外检查点
确认你的build.py里已经启用了unittest插件(一般默认会添加,但保险起见检查下):
use_plugin("python.unittest")
满足以上条件后,你的测试用例就能被PyBuilder正常执行啦~
内容的提问来源于stack exchange,提问作者Andrey Tyukin
相关产品推荐
相关产品推荐

