Cypress - JSON 文件的配置

Cypress 配置由一些适用于框架内所有测试的键值对组成。Cypress默认配置可在“测试运行器”窗口中的“设置”选项卡 ->“配置”(展开它)下找到。

Cypress自动化

如果我们在同一窗口中进一步查看,我们将获得 Cypress 给出的多个配置的现有值,例如超时、环境变量、文件夹路径等。

它显示如下 -

JavaScript 对象表示法

如果我们在同一窗口中进一步查看,我们将获得 Cypress 给出的多个配置的现有值,例如超时、环境变量、文件夹路径等。

它显示如下 -

更多配置 JavaScript 对象表示法

覆盖默认值

要覆盖 cypress.json 文件中的默认配置,我们必须指定键值对。

覆盖默认值

在 cypress.json 中实现

覆盖 JSON 文件默认值的实现如下 -

{
   "baseUrl" : "https://www.google.com/"
}

这里,键是 baseUrl ,值是https://www.google.com/。再次运行测试后,更改将反映在全局配置中,如下所示 -

全局配置

实际测试实施

覆盖 JSON 文件默认值的实际测试的实现如下 -

describe('Tutorialspoint', function () {
// test case
   it('First Test', function (){
      // launch application from configuration
      cy.visit("/")
   });
});

执行结果

输出如下 -

基本网址

执行日志显示baseUrl是从cypress.json文件中获取的,适用于框架内的所有测试。

覆盖默认配置

我们可以覆盖测试脚本中的默认配置,这些配置适用于测试用例中的单个测试步骤,而不适用于整个框架。

这是在 Cypress 中的 config 命令的帮助下完成的。

例如,如果我们想增加特定测试步骤的默认超时,实现应如下 -

//set default time out to nine seconds from following steps in test
Cypress.config('defaultCommandTimeout',9000)
landPage.selectUser().click()

同时,如果 cypress.json 文件中的 defaultCommandTimeout 值设置为 7 秒,则 Cypress 将优先考虑应用于测试步骤的超时(即 9 秒)。

最后,它优先考虑默认配置。

禁用覆盖默认配置

我们可以禁用该功能来覆盖 cypress.json 中的默认配置。

cypress.json 中的配置如下 -

{
   "defaultCommandTimeout" : "9000"
}

要禁用上述配置,请运行下面提到的命令 -

npx cypress open --config-file false

运行上述命令后,测试运行器窗口的“设置”选项卡将显示配置标志设置为 false。

此外,defaultCommandTimeout 设置为四秒,这是默认配置设置的,不会被 cypress.json 的九秒值覆盖。

默认命令超时