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

如何在Cypress中检查单选按钮是否被选中?

如何在Cypress中检查单选按钮是否被选中?

嗨,我来帮你搞定这个问题!你之前尝试用attr('state')来判断是走偏啦,单选按钮根本没有state这个属性,要判断它是否被选中,得看checked这个核心属性或者元素的实际状态,下面给你几种靠谱的方法:

方法一:直接用Cypress断言(最推荐)

这是最简洁直观的方式,直接用Cypress内置的断言来验证选中状态:

// 检查单选按钮是否已被选中
cy.get('[id=input1]').should('be.checked');

// 检查单选按钮是否未被选中
cy.get('[id=input1]').should('not.be.checked');

方法二:获取状态后自定义逻辑处理

如果你需要像代码里那样做条件判断(比如打印日志),可以用invoke('prop', 'checked')来获取当前的选中状态——这里要用prop而非attr,因为checked是DOM元素的动态属性,attr只能拿到初始值,而prop能获取实时的实际状态:

cy.get('[id=input1]')
  .invoke('prop', 'checked') 
  .then((isChecked) => { 
    if (isChecked) { 
       console.log('单选按钮已被选中') 
    } else { 
       console.log('单选按钮未被选中') 
    } 
  });

另外要注意哦,你之前看到的“检查单选按钮是否可点击”和“是否被选中”是两个完全不同的状态:判断可点击/可用是用should('be.enabled'),而选中状态是be.checked,别搞混啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.14 15:13:05