- Cypress教程
- Cypress - 主页
- Cypress - 简介
- Cypress - 架构和环境设置
- Cypress - 测试运行者
- Cypress - 构建第一个测试
- Cypress - 支持的浏览器
- Cypress - 基本命令
- Cypress - 变量
- Cypress - 别名
- Cypress - 定位器
- Cypress - 断言
- Cypress - 文本验证
- Cypress - 异步Behave
- Cypress - 使用 XHR
- Cypress - jQuery
- Cypress - 复选框
- Cypress - 标签
- Cypress - 下拉菜单
- Cypress - 警报
- Cypress - 子窗口
- Cypress - 隐藏元素
- Cypress - 框架
- Cypress - 网络表
- Cypress - 鼠标操作
- Cypress - cookie
- Cypress - 获取和发布
- Cypress - 文件上传
- Cypress - 数据驱动测试
- Cypress - 提示弹窗
- Cypress - 仪表板
- Cypress - 屏幕截图和视频
- Cypress - 调试
- Cypress - 自定义命令
- Cypress - 装置
- Cypress - 环境变量
- Cypress - 挂钩
- Cypress - JSON 文件的配置
- Cypress - 报告
- Cypress - 插件
- Cypress - GitHub
- Cypress有用资源
- Cypress - 快速指南
- Cypress - 有用的资源
- Cypress - 讨论
Cypress - JSON 文件的配置
Cypress 配置由一些适用于框架内所有测试的键值对组成。Cypress默认配置可在“测试运行器”窗口中的“设置”选项卡 ->“配置”(展开它)下找到。
如果我们在同一窗口中进一步查看,我们将获得 Cypress 给出的多个配置的现有值,例如超时、环境变量、文件夹路径等。
它显示如下 -
如果我们在同一窗口中进一步查看,我们将获得 Cypress 给出的多个配置的现有值,例如超时、环境变量、文件夹路径等。
它显示如下 -
覆盖默认值
要覆盖 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 的九秒值覆盖。