首页 > 解决方案 > 带电的 Cypress 测试

问题描述



我正在使用 Cypress 测试来测试我的项目,我在 jquery 的帮助下编写了该测试,
我使用 selectric 库进行选择,但遇到了一个问题,即我无法测试我的选择。
请帮助我解决这种情况。
我已经编写了赛普拉斯在下面给出的代码和错误

<select name="prefix" id="prefix_id" class="select-area">
            <option value="1">all</option>
            <option value="1">200 xxxx</option>
            <option value="2">255 xxxx</option>
</select>
it('search number', () => {
   cy.get('#prefix_id').select('1');
});

CypressError: Timed out retrying: cy.select() failed 因为这个元素:

<select class="select-area" name="region-select" id="region_id" tabindex="-1">...</select>

被另一个元素覆盖:

<div class="selectric">...</div>

修复此问题,或使用 {force: true} 禁用错误检查。

https://on.cypress.io/element-cannot-be-interacted-with

标签: javascriptjquerycypress

解决方案


首先我需要点击 div

<div class="selectric">...</div>

之后选项将以列表格式打开,例如

<ul>
<li>hey</li>
<li>hey2</li>
</ul> 

然后需要点击选项

cy.get('.region-container > .selectric-wrapper').click();
cy.get('.region-container > .selectric-wrapper > .selectric-items > .selectric-scroll > ul > .last').click();

我的选择和标签在一个容器内,该容器是区域容器


推荐阅读