Ниже мой HTML-код:
<div class = "main">
<div class = "box">
<div class = "cell">checkbox</div>
<div class = "cell"></div>
<div class = "cell">
<a>link1</a>
</div>
<div class = "cell">type</div>
<div class = "cell">description</div>
</div>
<div class = "box"> //i want to click this element
<div class = "cell">checkbox</div>
<div class = "cell"></div>
<div class = "cell">
<a>link2</a>
</div>
<div class = "cell">type1</div>
<div class = "cell">description1</div>
</div>
<div class = "box">
<div class = "cell">checkbox</div>
<div class = "cell"></div>
<div class = "cell">
<a>link3</a>
</div>
<div class = "cell">type2</div>
<div class = "cell">description2</div>
</div>
</div>
Я хотел бы щелкнуть элемент div с классом box
, содержащим тег <a>link2</a>
.
Я пробовал это:
cy.get(`.main>div`).contains('link2').click();
Это щелкает сам элемент ссылки, но я бы хотел, чтобы вместо этого он щелкал элемент div
, который его содержит (тег <a>link2</a>
).
Есть ли способ сделать это?
Я с нетерпением жду любых советов и решений, которые вы могли бы предоставить.
Спасибо.
Вы можете попробовать получить родительский элемент link2
, который является div, который вы хотите щелкнуть, следующим образом:
cy.get(`.main>div`).contains('link2').parent().click();
Я считаю, что вы можете использовать селектор в «содержит», как показано ниже
cy.contains('.main>div', 'link2').click();