我的Cypress测试用例在我的系统中运行时,指向QA时工作正常。但从CI中的计划构建却随机失败,因为有时页面需要更多的时间来加载。
我试过cy.wait(1500) -> 它有时工作,有时失败。所以,我想知道在cypress中是否有一个命令可以等到页面中的所有组件都加载完毕。而不是我在cy.wait()里面尝试不同的值,反过来有一天会失败?
默认情况下,Cypress有智能等待所有元素加载和页面渲染的功能。本节确认了这一点。https:/docs.cypress.ioguidescore-conceptsintroduction-to-cypress.html#Cypress-is-Not-Like-jQuery。
而不是在每一步中插入cy.wait()(最好的做法是尽量减少使用这个),你可以在你的 cypress.json
文件。
"defaultCommandTimeout": 30000,
"pageLoadTimeout": 60000,
"requestTimeout": 60000,
如果还是失败,那么你的测试环境就有问题了 可能是开发人员检查其性能的好时机 因为你不希望环境加载时间太长,尤其是当它是生产现场的副本时