我有以下测试,用 Cypress 编写。我在前端使用带有 SSR 支持的 VueJS。我的应用程序是一个 SPA,我正在测试用户点击菜单。
before(() => {
// mock data etc.
});
it('should check if component render properly without ssr', () => {
cy.visit('url');
cy.wait(1000);
cy.get('.menuElement').click();
cy.get('.something').should($something => {
expect($something).to.have.length(10);
});
});
根据赛普拉斯的最佳实践,我不应该以这种形式使用 cy.wait。但问题是;没有等待,测试将失败。我尝试使用:
{ timeout: 10000 }
作为 cy.get 和 cy.visit 中的参数- 添加了类似的东西
.should('be.visible');
(等待何时可见) - 添加路线
cy.wait("@abc")
但以上都不适合我。
请提出解决方案。我应该怎么做才能在我的情况下一切正常?