首页 > 解决方案 > Cypress.io - 等待页面完成加载的时间过长

问题描述

我经常遇到以下这种情况:

cy.visit(loginUrl);

cy.get('txtUsername');
cy.type('John Smith');
cy.get('btnLogin').click();

该页面会立即出现并显示预期的字段和控件,但赛普拉斯继续等待几秒钟以等待其他短暂的页面加载任务(脚本完成加载,可能?对 Google Analytics 的微不足道的标注?)在它开始交互之前完成田野。

我希望赛普拉斯在字段可用时立即开始与它们进行交互。如果赛普拉斯等待的时间不超过它需要的时间,我的测试套件的总运行时间将会显着提高。

标签: javascripte2e-testingcypress

解决方案


onBeforeLoad我知道,这不是最好的解决方案,但是您可以删除将选项传递给您的visit调用的减慢脚本。文档说

onBeforeLoad在您的页面加载其所有资源之前尽快调用。你的脚本此时还没有准备好,但它是一个很好的钩子,可以潜在地操纵页面。


推荐阅读