赛普拉斯测试:未找到<li>元素

时间:2020-10-16 13:24:03

标签: wordpress testing automated-tests cypress

我正在尝试从此列表中选择该项目,但它说它不存在 enter image description here

这是html结构:

<span class="select2-results">
<ul class="select2-results__options" role="listbox" tabindex="-1" id="select2-billing_country-results" aria-expanded="true" aria-hidden="false" aria-activedescendant="select2-billing_country-result-jqjd-AS">
<li class="select2-results__option" id="select2-billing_country-result-klqe-default" role="option" data-selected="false" tabindex="-1" aria-selected="false">Seleziona un Paese/una regione…</li>
<li class="select2-results__option" id="select2-billing_country-result-gzkv-AX" role="option" data-selected="false" tabindex="-1" aria-selected="false">Åland Islands</li>
<li class="select2-results__option" id="select2-billing_country-result-n44m-AF" role="option" data-selected="true" tabindex="-1" aria-selected="false">Afghanistan</li>
......

使用赛普拉斯,我使用以下命令:

cy.get('#select2-billing_country-container').click()
cy.get('li#select2-billing_country-result-c98f-default').click()

但是出现以下错误:

enter image description here

1 个答案:

答案 0 :(得分:2)

每次加载DOM时,id末尾的文本似乎都在变化,因此您需要选择一个解决该问题的定位器,一种选择是代替检查整个id,我们将检查该部分id,然后单击第三个元素。

cy.get('li[id*="select2-billing_country"]').eq(2).click()