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

Cypress使用should(be.visible)时报be is not defined错误如何解决

问题原因
  • 核心报错点:should(be.visible) 中的断言参数必须是字符串类型,你未给be.visible加引号,JS运行时会把be识别为未声明的变量,直接抛出ReferenceError: be is not defined报错。
  • 附带语法问题:cy.get()中的选择器input[data-with='Continue']是字符串类型,必须用引号包裹,否则也会触发语法错误。
  • 代码完整性问题:你贴出的代码未补全it、describe对应的闭合花括号和括号,运行时也会报错。
修复后可运行的完整代码
describe('Login', function() { 
  it('should be able to login ', function() {
    expect(cy).property('xpath').to.be.a('function') 
    // 两处核心修改:选择器加引号、be.visible包裹为字符串
    cy.get("input[data-with='Continue']").should('be.visible').click() 
  })
})
补充说明
  • Cypress的should方法接收的内置断言规则都是字符串格式,所有类似be.visible、exist、have.text这类断言参数都必须用单引号或双引号包裹。
  • 传入cy.get的DOM选择器必须是字符串类型,不要漏写外层引号。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.11 01:03:01