Cypress 做 e2e 测试,如何在获得某个 checkbox 后先判断它是否被 check 然后再更改它的状态?

比如如果这个 checkbox 已经被 check 了,就不做操作,否则将它 check。

我们假设这个 checkbox 的 data-testid 属性是 VendorCodeCheckbox-0-test-id。Cypress 的代码如下:

javascript 复制代码
cy.getByTestId('VendorCodeCheckbox-0-test-id')
  .shadow()
  .find('[role=checkbox]')
  .then(checkbox => {
    if (checkbox.get().at(0).ariaChecked !== 'true') {
      checkbox.click()
    }
  })

注意,对于不同的前端框架,寻找组件的逻辑可能不同。

相关推荐
胡琦博客4 小时前
基于华为开发者空间云开发环境(容器)探索前端智能化
前端·人工智能·华为云
vx_bisheyuange4 小时前
基于SpringBoot的青年公寓服务平台
前端·vue.js·spring boot·毕业设计
web前端1234 小时前
前端如何开发一个MCP Server - 安全审计实战项目介绍
前端·mcp
奶糖 肥晨4 小时前
JS自动检测用户国家并显示电话前缀教程|vue uniapp react可用
javascript·vue.js·uni-app
Dr_哈哈4 小时前
Node.js fs 与 path 完全指南
前端
啊花是条龙4 小时前
《产品经理说“Tool 分组要一条会渐变的彩虹轴,还要能 zoom!”——我 3 步把它拆成 1024 个像素》
前端·javascript·echarts
C_心欲无痕4 小时前
css - 使用@media print:打印完美网页
前端·css
青茶3605 小时前
【js教程】如何用jq的js方法获取url链接上的参数值?
开发语言·前端·javascript
脩衜者5 小时前
极其灵活且敏捷的WPF组态控件ConPipe 2026
前端·物联网·ui·wpf
Mike_jia5 小时前
Dockge:轻量开源的 Docker 编排革命,让容器管理回归优雅
前端