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

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

相关推荐
yeshihouhou1 分钟前
redisson实现延迟队列
java·前端·数据库
明码5 分钟前
Pathlib库
java·服务器·前端
吴声子夜歌7 分钟前
小程序——界面API(二)
前端·小程序
im_AMBER1 小时前
编辑器项目开发复盘:主题切换
前端·学习·前端框架·编辑器·html5
我命由我123452 小时前
React - 验证 Diffing 算法、key 的作用
javascript·算法·react.js·前端框架·html·html5·js
@PHARAOH4 小时前
HOW - Kratos 入门实践(二)- 概念学习
前端·微服务·go
We་ct8 小时前
LeetCode 77. 组合:DFS回溯+剪枝,高效求解组合问题
开发语言·前端·算法·leetcode·typescript·深度优先·剪枝
KerwinChou_CN8 小时前
什么是流式输出,后端怎么生成,前端怎么渲染
前端
爱上妖精的尾巴8 小时前
8-18 WPS JS宏 正则表达式-边界匹配
开发语言·javascript·正则表达式·wps·jsa
爱上妖精的尾巴8 小时前
8-20 WPS JS宏 正则表达式-懒惰匹配
服务器·前端·javascript