Cypress - JSON 文件的配置
Cypress 配置由一些适用于框架内所有测试的键值对组成。 Cypress 默认配置可在 Test Runner 窗口中的"设置"选项卡 ->"配置"(展开)下找到。
如果我们在同一个窗口中进一步向下查看,我们将获得 Cypress 提供的多个配置的现有值,如超时、环境变量、文件夹路径等。
它显示在 − 下方
如果我们在同一个窗口中进一步向下查看,我们将获得 Cypress 提供的多个配置的现有值,如超时、环境变量、文件夹路径等。
它显示在 − 下方
覆盖默认值
要从 cypress.json 文件中覆盖默认配置,我们必须指定键值对。
在 cypress.json 中实现
覆盖 JSON 文件的默认值的实现如下 −
{ "baseUrl" : "https://www.google.com/" }
此处,键为 baseUrl,值为 https://www.google.com/。再次运行测试后,更改将反映在全局配置中,如下所示 −
实际测试的实现
覆盖 JSON 文件的默认值的实际测试实现如下 −
describe('Tutorialspoint', function () { // 测试用例 it('First Test', function (){ // 从配置启动应用程序 cy.visit("/") }); });
执行结果
输出如下 −
执行日志显示已从 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 的九秒值覆盖。