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

Cypress测试运行失败后是否支持修改代码后从失败节点继续执行?

Cypress测试失败后接续运行的解决方案

Cypress原生没有直接从失败位置断点续跑的内置能力,你可以通过以下几种方案实现类似效果,减少重复运行已成功用例的时间:

方案1:仅重跑上一轮失败的用例集

这是最常用的轻量化替代方案:

  • 首次运行测试时添加--fail-fast参数,测试遇到第一个失败用例就会立即终止,避免后续无关用例继续执行浪费时间
  • 完成代码修正后,添加--spec参数指定上次失败的测试文件运行即可;如果安装了cypress-repeat插件,还可以直接加--only-failed参数,自动筛选并仅重跑上一轮所有执行失败的用例

注意:如果失败用例所在的测试文件内包含多个it测试块,这个方案会重跑整个文件内的所有用例,不会跳过该文件内已经执行成功的前置测试块。

方案2:手动标记跳过已验证成功的测试块

如果需要在单个测试文件内跳过已执行成功的前置步骤,可以通过临时标记实现:

  • 给已经执行成功的it块添加.skip修饰符,示例:it.skip('账号登录验证', () => { // 已验证通过的测试逻辑 })
  • Cypress运行时会自动跳过所有带.skip标记的测试块,直接从后续未标记的失败用例开始执行,调试完成后删除所有临时添加的.skip标记即可。

方案3:通过社区插件实现自动断点续跑(仅限本地调试使用)

如果不想手动修改代码加跳过标记,可以使用社区维护的cypress-grease插件:

  • 插件开启persistRuns配置项后,会自动记录每一个it块的运行状态,上一轮执行成功的测试块会被自动跳过,直接从失败的测试块开始运行
  • 该插件仅适合本地开发调试场景使用,不要在CI流水线中启用,避免缓存的状态数据影响正式测试结果的准确性。

内容的提问来源于stack exchange,提问作者Syed Muhammad Usman Ghani

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 17:27:03