赛普拉斯-等到元素改变状态

时间:2021-01-21 18:41:20

标签: user-interface dom cypress

我使用 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);

});

有没有办法让它等到状态改变,最后验证失败的次数。

谢谢

0 个答案:

没有答案