Cypress - 环境变量


我们可以定义环境变量,这些变量可以全局声明用于测试自动化框架,并且所有测试用例都可以访问它。这种类型的自定义环境变量可以存储在我们项目中的 cypress.json 文件中。

Cypress JSON

由于 Cypress 的默认配置中没有公开自定义变量,因此我们必须在 cypress.json 文件中将键指定为“evn”,然后设置值。

此外,要在实际测试中访问此变量,我们必须使用 Cypress.env 并传递在 json 文件中声明的值。

cypress.json 中的实现

cypress.json 格式中环境变量命令的实现如下:

{
   "projectId": "fvbpxy",
   "env" :
   {
      "url" : "https://www.google.com/"
   }
}

实际测试的实现

Cypress 中环境变量实际测试的实现如下:

describe('Tutorialspoint Test', function () {
   // test case
   it('Scenario 1', function (){
      // launch application from environment variable
      cy.visit(Cypress.env('url'))
      cy.getCookies()
      cy.setCookie('cookie1', 'value1')
   });
});

执行结果

输出如下:

Output Logs

输出日志显示了启动的 URL,该 URL 已从 cypress.json 文件中设置为自定义环境变量。

配置环境变量

我们可以使用 --env 标志从命令行配置或修改环境值。

要以 headed 模式运行特定文件(例如:Test1.js)并使用 URL:https://127.0.0.1,命令应如下所示

./node_modules/.bin/cypress run --spec cypress/integration/examples/Test1.js --
env url=https://127.0.0.1 –headed

如果我们在 cypress.json 文件中为环境变量 url 设置了一个值,该值与从命令行设置的值不同,则 Cypress 将优先考虑从命令行设置的值。

广告