Получение флажков в Cypress, если идентификатор генерируется автоматически - PullRequest
0 голосов
/ 03 марта 2020

Существует код (не написанный мной), который содержит уникальные идентификаторы для каждого флажка в каждой строке таблицы, который генерируется системой. Это выглядит так, как показано ниже, и «12345» генерируется автоматически для каждой добавленной строки и путей.

Вопрос в том, как указать для тестирования в кипарисе, какую строку я хочу проверить.

Код, который я тестирую:

<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>

И единственная возможность, с которой я работал в Cypress, - это использовать "first", но это не позволяет мне проверять, например, второй один или несколько флажков из множества.

cy.get('[xxx-yyy="document-aaa"]')
      .first()
      .find('[type="checkbox"]')
      .check({ force: true });

1 Ответ

0 голосов
/ 03 марта 2020

Вы можете использовать eq

cy.get('tbody>tr').eq(0)    // Yield first 'tr' in 'tbody'
cy.get('ul>li').eq(4)       // Yield fifth 'li' in 'ul'

Хорошо бы добавить для добавления в , чтобы сузить область только до этого списка / таблицы, а затем найти определенную строку и проверьте ckeckbox.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...