如果访问状态返回404状态代码,请重试不同的URL

2022-08-06 javascript cypress

我正在为我的应用程序编写一些Cypress测试,应该能够通过使用防毒面具欺骗在沙箱环境和临时环境中运行。问题是基本URL略有不同(一个使用HTTPS,一个使用http)。我正在尝试让cy.visest命令在HTTPS(临时)使用条件返回404的情况下使用以http(沙箱)开头的URL。如有任何建议,我们将不胜感激!我正在尝试这样做:

cy.visit(staging_url,  {
        if (resp.status === 404) {
            cy.visit(sandbox_url)
        }
});

解决方案

尝试将failOnStatusCode: false添加到Diogo Rocha的解决方案:

cy.request({staging_url, failOnStatusCode: false}).then((response) => {
 if (response.isOkStatusCode) {
    cy.visit(staging_url);
  } else {
    cy.visit(sandbox_url);
  }
});

相关文章