我使用 Cypress 进行了一些 UI 测试,其中有一个 span 元素 (#done-status),其初始值为 '',然后是“进行中”,然后是“完成”。在它更改为“完成”之后,我想将另一个元素 (#failures) 的值断言为 0。状态从空字符串更改为进行中和完成需要一些时间,具体取决于某些执行。我怎么能等到它改变它的状态。我尝试了随机等待,但由于元素已经在 DOM 上,它不会等待超时而失败。像这样:
it('应该验证测试是否通过', () => {
cy.get('#done-status')
.should('have.value', '');
cy.get('#done-status', { timeout: 10000 })
.should('have.value', 'In Progress')
cy.get('#done-status', { timeout: 300000 })
.should('have.value', 'Complete');
cy.get('.failures')
.should('have.value', 0);
});
有没有办法让它等到状态改变,最后验证失败的次数。
谢谢