微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 Cypress Test Automation 中的测试期间更改 baseUrl设置为 null

如何解决在 Cypress Test Automation 中的测试期间更改 baseUrl设置为 null

我需要在 cypress.json 文件中设置 baseUrl 以避免在 cy.visit() 中不必要的页面重新加载并在某些测试期间覆盖 baseUrl。

cypress.json

{
   "baseUrl": "https://dev.testhub.io/"
} 

测试步骤

  1. 通过点击 UI 中的示例下载按钮下载示例
  2. 使用系统命令 (exec) 解压缩下载的示例
  3. 单击 UI 中的复制按钮以复制配置值
  4. 将复制的配置值粘贴到解压示例中的文件

test.spec.ts

it("sample test",function () {
                    Cypress.config('baseUrl',null);
                    cy.log("logvalue" +Cypress.config().baseUrl);
                    appQuickStart.downloadSample("java");
                    appQuickStart.unzipSample(sampleDownloadDirectory,sampleJavaAppDownloadLocation);
                    appQuickStart.clickcopyConfigsButtonFromUI();  
                    appQuickStart.pastecopiedConfigToClipboard(sampleJavaAppExtractLocation);
                });

pastecopiedConfigToClipboard 方法,用于将配置复制到 clipbaord,然后将其写入文件 /src/config.json

static pastecopiedConfigToClipboard(sampleAppLocation){
        cy.wait(2000);
            cy.task("getClipboard").then((value) => {
                cy.writeFile(sampleAppLocation + "/src/config.json",value);
                cy.log("Before copy to config file" + value);
                cy.wait(10000);
                cy.log("After write to config file" + value);
                cy.readFile(sampleAppLocation + "/src/config.json").then((text) =>{
                });
            });
    }

clickcopyConfigsButtonFromUI()

static clickcopyConfigsButtonFromUI() {

        cy.get(".application-sample-config-editor .copy").click({ force: true });
        cy.wait(7000);
    }
  1. 我已经在 cypress.json 文件中设置了上面的 baseUrl。当它从那里设置的测试从 appQuickStart.pastecopiedConfigToClipboard() 失败时,它将调用任务以通过任务将一些内容复制到剪贴板。我用于复制到剪贴板的插件https://www.npmjs.com/package/clipboardy

  2. 然后我尝试在将执行此方法的 it() 中将 baseUrl 设置回 null。测试仍然在同一步骤失败。在我添加的日志中,它显示 baseUrl 设置为 null。

  3. 如果我从 cypress.json 中删除 baseUrl 配置并执行测试,则测试将执行而不会出现任何故障。

将 cypress.json 中的 baseurl 设置为剪贴板等插件以使其失败时是否有任何限制。

感谢您对此的投入

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。