Хитрость в том, чтобы нацелиться на <td>Casualty</td>
, а затем нажать на предыдущую <td><a>
.
Существует довольно много способов добраться до родственных элементов, самый простой в этом случае - prev () .
cy.contains('td', 'Casualty') // target the 'marker' element
.prev() // move to the previous sibling
.click()
Подход от строки и двигайтесь внутрь
Чтобы нацелиться на строку с определенной c комбинацией текста в некоторых ее ячейках, просто объедините текст и используйте contains()
.
cy.contains('tr', 'Declined Prospect Casualty') // target unique text within children
Это работает даже тогда, когда есть другие ячейки с текстом, которые не подходят для поиска, например,
<tr>
<td><a href="/id/338494">Declined Prospect</a></td>
<td>Casualty</td>
<td>Irrelevent text here</td>
</tr>
Затем вы можете пройти по дереву HTML,
cy.contains('tr', 'Declined Prospect Casualty') // target unique text within children
.find('td a') // descendant of previous subject
.click()