首页 > 解决方案 > 如何使用 jquery 在 Cypress 测试中获取 div 'text' 值

问题描述

在 Cypress.io 测试中使用 Jquery,如何从下面的 html 标记中获取名为 'Wildness' 的 div 'text' 值。我在 Cypress 测试中尝试过,但它在控制台中抛出 undefined。

const $divText = Cypress.$('.ibxudA .WildnessText-kRKTej').text()
         cy.wrap($divText)
           .should("eq", "Wildness")

<div class="sc-bMvGRv_onetwo">
<div>
<div class="abLeftSection">
<div class="abNewBtn-fTLJBK">
<button class="ifAKCX ohpWT" type="button">New</button>
</div>
<div class="kpLvEV" style="">
<div class="cWzXYZ">
<div class="OgGUG">
<div class="jsnnAD">
<svg class="dFvKsA"></svg>
</div>
</div>
<div class="ibxudA">First</div>
</div>
<div class="kpLvEV" style="">
<div class="bGADLM"><div class="OgGUG">
<div class="jsnnAD">
<svg class="dFvKsA"></svg>
</div>
</div>
<div class="ibxudA">
<div class="WildnessText-kRKTej" title="Wildness">Wildness</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>

标签: javascriptjquerycypress

解决方案


我可以试试这个:

cy.get(".ibxudA").find('.WildnessText-kRKTej').invoke('text').then((text) => {
    expect(text.trim()).equal('Wildness')
});

或者

 cy.get(".ibxudA").find('.WildnessText-kRKTej').should('have.text',"Wildness")

这可能是一个类似的问题:如何使用 cypress 检查元素内部文本的相等性?


推荐阅读