Checkbox 如果id是自动生成的,则在Cypress中选中复选框

Checkbox 如果id是自动生成的,则在Cypress中选中复选框,checkbox,cypress,Checkbox,Cypress,有一个代码(不是我写的)包含系统生成的每个表行中每个复选框的唯一id-s。如下图所示,为添加的每一行以及路径自动生成“12345” 问题是,如何在cypress中指定测试,我要检查哪一行 我正在测试的代码: <tr class="" xxx-yyy="document-aaa"><td><input id="12345" type="checkbox"><label for="12345"></label></td><

有一个代码(不是我写的)包含系统生成的每个表行中每个复选框的唯一id-s。如下图所示,为添加的每一行以及路径自动生成“12345”

问题是,如何在cypress中指定测试,我要检查哪一行

我正在测试的代码:

<tr class="" xxx-yyy="document-aaa"><td><input id="12345" type="checkbox"><label for="12345"></label></td><td xxx-yyy="document-bbb">word_document.docx</td><td class="text-right"><button class="text-grey-dark" xxx-yyy="delete-document"><svg focusable="false" preserveAspectRatio="xMidYMid meet" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 32 32" aria-hidden="true" class="inline-block" style="will-change: transform;"><path d="Ab13457GHT45"></path><path d="Zxf-67-HJKSx7"></path></svg> delete</button></td></tr>
你可以用

好的做法是将区域缩小到仅该列表/表,然后找到某一行并选中复选框

您可以使用


好的做法是将区域缩小到仅该列表/表,然后找到某一行并选中复选框

谢谢你,eq工作了。“内在”也是一个很好的观点,我没有想到,但它会让你更精确。谢谢你,情商奏效了。“内在”也是一个很好的观点,我还没有想到,但它会更精确。
cy.get('[xxx-yyy="document-aaa"]')
      .first()
      .find('[type="checkbox"]')
      .check({ force: true });
cy.get('tbody>tr').eq(0)    // Yield first 'tr' in 'tbody'
cy.get('ul>li').eq(4)       // Yield fifth 'li' in 'ul'