javascript - Cypress.io - 等待页面完成加载的时间过长
问题描述
我经常遇到以下这种情况:
cy.visit(loginUrl);
cy.get('txtUsername');
cy.type('John Smith');
cy.get('btnLogin').click();
该页面会立即出现并显示预期的字段和控件,但赛普拉斯继续等待几秒钟以等待其他短暂的页面加载任务(脚本完成加载,可能?对 Google Analytics 的微不足道的标注?)在它开始交互之前完成田野。
我希望赛普拉斯在字段可用时立即开始与它们进行交互。如果赛普拉斯等待的时间不超过它需要的时间,我的测试套件的总运行时间将会显着提高。
解决方案
onBeforeLoad
我知道,这不是最好的解决方案,但是您可以删除将选项传递给您的visit
调用的减慢脚本。文档说
onBeforeLoad
在您的页面加载其所有资源之前尽快调用。你的脚本此时还没有准备好,但它是一个很好的钩子,可以潜在地操纵页面。
推荐阅读
- c - pthread_join 导致奇怪的执行顺序
- c++ - 为什么在cpp中使用resize时字符串连接失败?
- openvdb - 我正在尝试使用 Openvdb 将点云转换为网格
- google-people-api - PeopleQuickstart 不适用于范围 https://www.googleapis.com/auth/contacts.other.readonly
- ssl - kubernetes 证书无法与让我们加密证书管理器一起使用
- c# - 根据颜色裁剪黑色图像周围的空白区域
- unity3d - hololens2 模拟器中不显示空间网格
- django - Systemd:在脚本执行结束时记录消息
- symfony - 如何在 Shopware 6 中覆盖订阅者?
- python - 在多处理中无法调用 Loky 支持的并行循环,使用 scikit-learn 设置 n_jobs=1