如何在 Cypress 中访问 baseURL 的值

Posted

技术标签:

【中文标题】如何在 Cypress 中访问 baseURL 的值【英文标题】:How to access the value of baseURL in Cypress 【发布时间】:2019-03-29 19:12:10 【问题描述】:

我刚刚开始学习 javascript,并且一直在使用 Cypress 来自动化一些回归测试。我目前编写的测试旨在验证页眉和页脚中的链接文本和href。

我遇到的问题是这些测试需要在各种环境中运行,我似乎无法访问 cypress.json 中设置的 baseUrl 属性以在我的断言中设置域。

在后面的脚本中是cy.get("a").should("have.attr", "href", baseUrl + footerLink.link):

    it.only("translates the content info section", () => 
      cy.wrap(orbitData).each(service => 
        cy.visit(service.name);
        cy.get("#orb-contentinfo > div > ul > li").each(($li, index) => 
          let footerLink = service.links[index]
          cy.wrap($li).should("have.text", footerLink.linkText)
          .within(($li) => 
            cy.get("a").should("have.attr", "href", baseUrl + footerLink.link)
          );
        );
      );
    );

到目前为止,我已经尝试了很多东西,我有点不好意思把它们都列出来,我是新手,所以它们可能很疯狂,肯定只是猜测;其中有Cypress.env('CYPRESS_baseUrl')Cypress.baseUrl。每次它都以undefined 的形式返回。

或者,如果我以完全错误的方式对此进行攻击,任何关于更好方式的指导将不胜感激。我将不胜感激任何帮助或指导,谢谢。

【问题讨论】:

【参考方案1】:

您可以使用Cypress.config() 命令。

要获取baseUrl 值,请使用Cypress.config().baseUrl

【讨论】:

以上是关于如何在 Cypress 中访问 baseURL 的值的主要内容,如果未能解决你的问题,请参考以下文章

访问新窗口 - cypress.io

如何在 Cypress.io 中等待 WebSocket STOMP 消息

没有 Cypress 仪表板的 Cypress 并行化

无法使用 Cypress 在影子主机中访问 pdf 查看器的元素

如何在 ASP.NET Core 中获取我网站的 baseurl?

将 Cypress Mocha 测试报告发送到 Cypress 仪表板