PyCharm中何时可从测试结果面板运行单元测试?
PyCharm中pytest失败用例右键运行/调试功能的可用场景
运行pytest后,右键点击失败测试用例本可以快速重新运行或调试,但有时会弹出“此处无内容”的提示。以下是该功能能正常使用的场景:
- 测试用例被pytest正确识别并执行:只有PyCharm能解析到pytest生成的完整测试结果(包括失败用例的栈信息、唯一标识),右键菜单才会出现运行/调试选项。如果测试用例命名不符合pytest规范(比如没以
test_开头)、或是被@pytest.mark.skip标记跳过,都无法触发该功能。 - 测试结果面板完全加载完成:必须等pytest执行结束,Run窗口里的失败用例条目完全渲染后,右键操作才有效。如果执行中途中断、或是日志输出过多导致面板加载卡顿,就可能出现“此处无内容”的提示。
- 失败用例的代码在项目索引范围内:用例对应的代码文件必须在当前PyCharm项目的索引中,且文件未被移动、重命名,也没有语法错误导致IDE无法解析代码结构。如果代码不在索引里,IDE找不到执行入口,右键功能就会失效。
- 未使用干扰结果解析的自定义pytest插件/脚本:部分自定义插件会修改pytest的输出格式,导致PyCharm无法正确识别失败用例的位置和标识。比如自定义插件改变了失败用例的输出结构,IDE解析不了结果,就没法提供右键运行选项。
- 参数化用例被正确实例化:参数化用例如果因参数生成失败、或是装饰器使用错误导致用例未被正常实例化,PyCharm可能无法识别单个失败的参数化实例,这时右键功能也会失效。

内容的提问来源于stack exchange,提问作者WestCoastProjects
相关产品推荐
相关产品推荐

