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

升级Cypress至v8.3.1后出现Cypress.moment未定义报错如何解决

问题修复方案

根因说明

你遇到的报错是因为@cypress/code-coverage旧版本依赖Cypress内置的Cypress.momentAPI实现超时时间计算,而Cypress v8.0+版本已经正式移除了该内置API,导致插件调用时触发属性读取失败。

解决方案

方案1(优先推荐):升级代码覆盖率插件到兼容版本

官方已经在@cypress/code-coverage v3.9.12及以上版本修复了该问题,移除了对Cypress.moment的依赖,直接执行对应包管理器的升级命令即可:

# npm 环境
npm update @cypress/code-coverage --save-dev
# yarn 环境
yarn upgrade @cypress/code-coverage --dev

升级完成后重启Cypress即可正常运行测试,无其他额外配置。

方案2(临时兼容方案):手动补全全局moment引用

如果受项目限制暂时无法升级插件,可以自行挂载moment到Cypress全局对象兼容旧版插件逻辑:

  1. 首先安装moment依赖:
npm install moment --save-dev
  1. 在Cypress测试的cypress/support/index.js(v10+版本为cypress/support/e2e.js)文件最顶部添加如下代码:
Cypress.moment = require('moment')

该方案可以临时解决报错问题,后续建议尽快升级插件避免冗余依赖。

内容的提问来源于stack exchange,提问作者denislexic

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 21:12:03