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()
    }
  })

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

相关推荐
WYiQIU11 小时前
11月面了7.8家前端岗,兄弟们12月我先躺为敬...
前端·vue.js·react.js·面试·前端框架·飞书
谢尔登11 小时前
简单聊聊webpack摇树的原理
运维·前端·webpack
娃哈哈哈哈呀12 小时前
formData 传参 如何传数组
前端·javascript·vue.js
zhu_zhu_xia13 小时前
vue3+vite打包出现内存溢出问题
前端·vue
tsumikistep13 小时前
【前后端】接口文档与导入
前端·后端·python·硬件架构
行走的陀螺仪13 小时前
.vscode 文件夹配置详解
前端·ide·vscode·编辑器·开发实践
2503_9284115614 小时前
11.24 Vue-组件2
前端·javascript·vue.js
Bigger14 小时前
🎨 用一次就爱上的图标定制体验:CustomIcons 实战
前端·react.js·icon
谢尔登14 小时前
原来Webpack在大厂中这样进行性能优化!
前端·webpack·性能优化
g***B73814 小时前
JavaScript在Node.js中的模块系统
开发语言·javascript·node.js