赛普拉斯断言 A 或 B

Hes*_*eer 7 cypress

我想在Cypress中做出如下断言:

cy.get(a).should('be.visible').or(()=>{
    cy.get(b).should('be.visible');
});
Run Code Online (Sandbox Code Playgroud)

换句话说,我想检查条件 A 或条件 B 是否为真。如何在赛普拉斯中做到这一点?

Fod*_*ody 8

一种方法是使用jQuery 多重选择器。它将需要使用:visiblevisible将断言移动到选择器内。

cy.get('a:visible, b:visible')
Run Code Online (Sandbox Code Playgroud)

请注意,您牺牲了 Cypress 的一些内置重试功能(与所有条件测试一样)。

例如,如果b:visible现在但a:visible1 秒后,它会给你b。而cy.get(a).should('be.visible')将等待第二次并返回a

根据场景的细节,还有其他方法。