在赛普拉斯测试中单击表单按钮时,在页面响应完成之前,我无法在页面上进行任何其他测试。这是一个问题,因为在单击“表单”按钮后,我正在尝试测试加载微调器的可见性。
无效的测试示例:
cy.get('#username').type('testusername')
.get('#password').type('password')
.get('#login-button').click().then(() => {
cy.get('#login-spinner').should('be.visible');
});
问题在于,直到页面加载完成后,cy.get('#login-spinner').should('be.visible');
的最后一部分才执行。我也尝试将其移到.then()
子句之外,但是结果是相同的-赛普拉斯似乎非常坚持必须等待表单响应加载:
cy.get('#login-spinner').should('be.visible');
然后在单击表单后加载的页面上执行,这时微调器再次隐藏,导致测试失败。