首页 > 解决方案 > 值不存在时如何根据cypress中的值检查复选框元素

问题描述

如何根据cypress中的值检查复选框元素,而value属性不存在。我想根据值而不是id来检查复选框,因为每个页面的id都不一样。

在此处输入图像描述

因为在有些页面中,id以c1开头,有些页面id以c2开头,有些以c5开头。我将如何根据值检查元素?我得到了所有 3 个复选框的选择器,但它检查了所有 3 个元素。我想要根据 value 属性的特定元素,但是没有 value 属性。我试过这个

             cy.get('.x-overlay__wrapper--right input[type="checkbox"]').check()

但它检查了所有元素,这检查了第一个元素

             cy.get('.x-overlay__wrapper--right input[type="checkbox"]').first().check()

但是我想根据值进行检查,但是在属性中没有值属性。

我想要的值就写在复选框旁边

在此处输入图像描述

在 html 中 在此处输入图像描述

标签: javascripthtmlcheckboxcss-selectorscypress

解决方案


查看 html,也许搜索文本,然后使用父级和兄弟级命令将主题转移到复选框,例如

cy.contains('span', 'Free Shipping')  // find your text
  .parent('div')                      // move to parent div
  .siblings('span.checkbox')          // move to checkbox span
  .find('input')                      // select it's input
  .check();                         

推荐阅读