You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jest的--onlyFailures参数在CI环境中无法仅重跑失败测试的问题求助

Jest的--onlyFailures参数在CI环境中无法仅重跑失败测试的问题求助

我最近碰到个头疼的问题,想请大家帮忙分析下:比如我有10个Jest测试用例,其中3个执行失败了,我希望在CI环境里只重跑这些失败的用例,用的命令是:

npx jest --testResultsProcessor="jest-junit" --testResultsProcessorOptions="{\"outputName\":\"results/report.xml\"}" --onlyFailures

这个命令在本地运行完全正常,但放到CI环境里就失效了,CI会提示no tests failed(没有测试失败)。

我尝试过获取上一次测试生成的报告工件路径,也在CI的YAML配置文件里做了调整,我的YAML脚本配置如下:

script:
- cd tests-${APP_NAME}
- npm i
# Rerun only failed tests with Jest options
- npm install -g jest
- cat tests-${APP_NAME}/results/*.xml
- npx jest --ci --testResultsProcessor="jest-junit" --testResultsProcessorOptions="{{"outputName":"tests-${APP_NAME}/results/report.xml}" --onlyFailures

但不管怎么调整都没效果,我实在搞不懂--onlyFailures这个参数在CI环境里到底是怎么工作的,有没有大佬能给我点思路或者建议?万分感谢!

补充一下:我已经确认了工件路径是正确的,也打印过XML文件的内容,能看到报告确实存在,但就是没法让CI只重跑失败的测试...

备注:内容来源于stack exchange,提问作者Deepti Gumpula

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 07:34:30