Javascript 使用Cypress通过web网关登录超时

Javascript 使用Cypress通过web网关登录超时,javascript,testing,automation,qa,cypress,Javascript,Testing,Automation,Qa,Cypress,我正在尝试对我的webapp进行一些测试,但要做到这一点,我必须登录到外部网站,为了做到这一点,我的before声明是: beforeEach(()=>{ cy.visit('http://localhost:3001/') cy.get('#username') .type('user'); cy.get('#password') .type('pass'); cy.get('#fm1 > div > secti

我正在尝试对我的webapp进行一些测试,但要做到这一点,我必须登录到外部网站,为了做到这一点,我的before声明是:

beforeEach(()=>{
    cy.visit('http://localhost:3001/')
    cy.get('#username')
        .type('user');
    cy.get('#password')
        .type('pass');
    cy.get('#fm1 > div > section.row.btn-row > input.btn.btn-submit.btn-block')
        .click();
})
预期的行为是,当我转到localhost:3001时,它会将我重定向到另一个网站,在该网站上我设置了登录凭据,并在单击“登录”后将我重定向到原始网站

问题是我在局外人网站上收到了这个

CypressError:等待远程页面“60000ms”后超时 装载

您的页面未在“60000ms”内触发其“加载”事件

您可以尝试增加“cypress.json”中的“pageLoadTimeout”值 再等一会儿

在所有样式表和 脚本下载完成

发生此“加载”事件时,Cypress将继续运行命令

因为这个错误发生在一个“beforeach”钩子中,所以我们 跳过当前套件中的其余测试:“测试并拖动” 滴,在塞浦路斯…'


我已尝试增加pageLoadTimeout,但它不起作用,因此,您能给我一些有关此问题的指导吗?

如果您的页面上存在无法在cypress浏览器内解决的外部资源,则可能会发生这种情况。也许你的环境就是这样? 在我们的企业应用程序中更新header组件之后,我遇到了类似的问题。突然,所有e2e测试都失败了,出现了“加载事件未触发”错误

在做了一些广泛的研究后,我意外地发现新插入的公司徽标是通过一个绝对的外部URL包含的。通过在CI中执行cypress,由于防火墙规则,此URL被阻止。 这导致页面加载事件被阻止,从而导致测试中断。将图像URL更改为相对路径后,一切又恢复正常


那么,也许你的“外部”网站也有类似的案例

对于Facebook SDK这样的外部脚本,您会怎么做?