在柏树中,我如何等待页面加载?

Posted

技术标签:

【中文标题】在柏树中,我如何等待页面加载?【英文标题】:In cypress, how do I wait for a page to load? 【发布时间】:2018-09-08 06:13:22 【问题描述】:

不要告诉任何人,但我们的应用还不是单页的。我可以通过为路线指定别名来wait on a given XHR request,但是我如何等到某些导航完成并且浏览器安全地在新页面上?

【问题讨论】:

类似this? 【参考方案1】:

你可以在里面添加一些断言:

cy.click('#someButtonToNavigateOnNewPage');

cy.location('pathname', timeout: 60000)
  .should('include', '/newPage');

cy.click('#YouAreOnNewPage');

您可以更改默认超时 - 默认为 4000 毫秒(4 秒) - 以确保用户浏览页面。我在这里放了一个很大的数字——60,000 毫秒——因为我确信如果 1 分钟后没有加载页面,99% 的用户会离开。

【讨论】:

如何或在哪里添加等待期?【参考方案2】:

使用.should 语句添加一些断言并验证页面标题或标题

cy.visit('/dashboard').click();
cy.title().should('eq', 'Dashboard'); // page tab title

【讨论】:

以上是关于在柏树中,我如何等待页面加载?的主要内容,如果未能解决你的问题,请参考以下文章

在 puppeteer 中如何等待弹出页面完成加载?

js如何做等待页面加载效果

在 Webdriver 中提交表单后如何等待页面加载。我正在使用 Firefox 驱动程序

无法让webdriver等待页面加载

如何让Mink Selenium 2 Driver等待页面加载Behat

淘汰赛:在等待查询完成时加载页面