在 cypress 中使用显式等待机制时无法覆盖默认超时

问题描述 投票:0回答:2

我正在使用 cypress-wait-until 插件在我们的框架中应用显式等待。当我使用它时,给出的最大时间是 30000 毫秒,所以理想情况下它应该等待最多 300000 毫秒(30 秒)才能使元素可见,但它会在 4 秒后超时,这是 cypress 命令的默认超时。

    cy.waitUntil(() => cy.get('div.tabs div:nth-child(3)').should('be.visible') ,{timeout:30000})

我想知道我应该在哪个文件中进行哪些更改,以便我可以覆盖为 cypress 规定的默认超时。如果社区在这方面提供一些解决方案,那就太好了。

javascript cypress ui-automation cypress-wait-until
2个回答
0
投票

您是否尝试过将 全局超时 增加到大于

cypress.json
中的等待超时的值?

{
  "defaultCommandTimeout": 35000
}

0
投票

使用 wait-until 包实际上并不是必要的,Cypress 在每个命令上都有内置的超时。根据我的经验,这个包裹也有点不稳定。

您只需使用此即可实现您所描述的目标

cy.get('div.tabs div:nth-child(3)', {timeout:30_000}).should('be.visible')

要更改默认值,如果使用 Cypress v9 或更低版本,请按照 daun 的建议进行操作,或者在文件

cypress.config.js
中了解以上版本。

或者将超时作为参数添加到测试中

it('tests my framework', {timeout:30_000}, () => {

您可以在 Cypress 文档中阅读更多内容。

© www.soinside.com 2019 - 2024. All rights reserved.