如何让pytest先执行失败用例后立即执行新增未测用例?
解决方案:添加
--new-first参数即可实现需求 嘿,刚好pytest本身就支持这个需求,你只需要在现有命令里加一个--new-first参数就行!
修改后的执行命令
pytest --failed-first --new-first -v -s -x
各参数作用拆解
--failed-first:保持你原来的逻辑,优先执行上一次运行失败的用例--new-first:这是关键!它会让pytest在跑完失败用例后,立刻优先执行从未测试过的新用例,而不是先去跑那些之前已经成功的旧用例-v:启用详细输出,展示每个用例的执行状态-s:禁用输出捕获,显示用例中的串行打印内容-x:遇到第一个失败用例就停止执行
执行顺序说明
这个命令的执行优先级是:
- 上一次运行失败的用例
- 本次新增的、从未被测试过的用例
- 上一次运行成功的旧用例
完全符合你想要的“长耗时测试时尽快获取新用例结果”的需求,不用再等所有旧成功用例跑完才能看到新用例的反馈。
小提示:
--new-first是pytest 3.0及以上版本支持的参数,如果你的pytest版本太旧,记得先升级一下哦。
内容的提问来源于stack exchange,提问作者Zorglub29
相关产品推荐
相关产品推荐

