Cypress - JSON 文件的配置

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

Cypress Automation

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

它显示在 − 下方

JavaScript Object Notation

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

它显示在 − 下方

更多配置 JavaScript 对象表示法

覆盖默认值

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

覆盖默认值

在 cypress.json 中实现

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

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

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

Global Configurations

实际测试的实现

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

describe('Tutorialspoint', function () {
    // 测试用例
    it('First Test', function (){
        // 从配置启动应用程序
        cy.visit("/")
    });
});

执行结果

输出如下 −

BaseUrl

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

覆盖默认配置

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

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

例如,如果我们想增加特定测试步骤的默认超时时间,则实施应如下 −

//从以下步骤将默认超时设置为 9 秒测试
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

运行上述命令后,Test Runner 窗口的"设置"选项卡将显示设置为 false 的配置标志。

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

默认命令超时