PyDev环境下Pytest无法发现测试用例问题咨询
解决PyDev中Pytest无法识别测试用例的问题
这问题我之前踩过同款坑!核心原因是你没遵循Pytest的测试识别规则,而且手动实例化调用测试方法的方式,完全绕开了Pytest的测试发现机制。下面一步步给你解决:
1. 先修正测试代码的写法,符合Pytest规则
Pytest识别测试有几个硬性要求,你的代码刚好踩了第一个坑:
- 测试类必须以大写
Test开头(比如TestPqr,而不是test_pqr) - 测试方法要保持
test_前缀(这点你已经做对了) - 绝对不要手动实例化测试类、调用测试方法——Pytest会自动扫描并执行符合规则的测试
修正后的代码应该是这样:
class TestPqr(): def test_lmn(self): print("AAAAAAAAAAAAAAAAAAAAA") assert True def test_xyz(self): assert False
删掉那些手动创建实例和调用方法的代码,让Pytest自己来处理执行逻辑。
2. 配置PyDev的测试运行环境
光改代码还不够,得确保PyDev用Pytest来跑测试:
- 打开PyDev的偏好设置:
Window > Preferences > PyDev > PyUnit - 把默认测试运行器改成
pytest,保存设置 - 确认你的测试文件所在的目录被标记为测试源:右键目录,选择
PyDev > Set as Test Source Folder
3. 正确运行测试的方式
现在右键你的测试文件(或者测试类),选择Run As > PyDev pytest,Pytest就能自动识别并执行test_lmn和test_xyz这两个用例了。
为啥之前的写法不行?因为你手动调用方法只是普通的Python脚本执行,根本没触发Pytest的测试发现流程,PyDev自然识别不到这些是测试用例啦~
内容的提问来源于stack exchange,提问作者1234
相关产品推荐
相关产品推荐

