Cypress系列(5)- 自定义 Cypress
如果想从头学起Cypress,可以看下面的系列文章哦
https://www.cnblogs.com/poloyy/category/1768839.html
前言
- Cypress 不仅支持用户自定义文件结构,还支持用户自定义 Cypress 的各项配置
- Cypress 可以通过 cypress.json 文件来实现各项配置的自定义【文件默认是空的】
- 这里只介绍常用到的配置项,更多配置项请看:https://docs.cypress.io/zh-cn/guides/references/configuration.html#Cypress-config
全局配置项

超时 Timeouts相关
- 超时是必须要了解的核心概念
- 几乎所有命令都可能以某种方式超时
- 所有断言,无论它们是默认断言还是自己添加的断言都具有相同的超时时间

文件夹 / 文件相关
相对于默认文件结构来说,Cypress 支持用户自定义的文件结构

可视视图
Cypress 在 Test runner 中运行时,会显示一个可视视图

Cypress.config()
除了直接在 cypress.json 文件里更改配置项之外,Cypress 还允许我们通过 Cypress.config() 去获取或覆盖某些配置项,语法如下:
// 获取所有config信息
Cypress.config() // 获取指定配置项的信息
Cypress.config(name) // 更改指定配置项的默认值
Cypress.config(name, value) // 使用对象字面量(object literal)设置多个配置项
Cypress.config(object)
小栗子
每次测试运行前都打印所有的配置信息,将下列代码添加到 cypress/support/index.js 中
beforeEach(function () {
cy.log(`当前环境变量为${JSON.stringify(Cypress.env())}`)
cy.log(`当前配置项信息为${JSON.stringify(Cypress.config())}`)
})
运行任意测试文件,则可以看到执行 visit() 命令前打印了两次log日志

在测试文件的栗子
在 Integration 文件夹下创建 testConfig.js 文件
//<reference types="cypress" /R>
describe('测试配置项', function () {
it('测试取值和设置值', function () {
// 获取 pageLoadTimeout默认值
cy.log(`pageLoadTimeout默认值是:${Cypress.config('pageLoadTimeout')}`)
// 设置 pageLoadTimeout 值
Cypress.config("pageLoadTimeout",100000)
// 再次获取 pageLoadTimeout 的值
cy.log(`pageLoadTimeout默认值是:${Cypress.config('pageLoadTimeout')}`)
})
})
运行 testConfig.js 文件,结果如下图

Cypress系列(5)- 自定义 Cypress的更多相关文章
- Cypress系列(63)- 使用 Custom Commands
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html Custom Commands 自定义命 ...
- Cypress系列(65)- 测试运行失败自动重试
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 重试的介绍 学习前的三问 什么是重试测试 ...
- Cypress系列(69)- route() 命令详解
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 作用 管理控制整个网络请求 重要注意事项 ...
- Cypress系列(90)- Cypress.Cookies 命令详解以及如何跨测试用例共享 Cookies
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html Cypress.Cookies 共有三个 ...
- Cypress系列(1)- Window下安装 Cypress 并打开
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 系统要求 Cypress 是一个被安装在 ...
- Cypress系列(2)- Cypress 框架的详细介绍
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html Cypress 简介 基于 JavaSc ...
- Cypress系列(44)- 命令行运行 Cypress
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 前言 前面也介绍过 Cypress 命令 ...
- Cypress系列(67)- 环境变量设置指南
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 常见的环境变量设置方式 可参考这篇文章: ...
- Cypress系列(70)- server() 命令详解
如果想从头学起Cypress,可以看下面的系列文章哦 https://www.cnblogs.com/poloyy/category/1768839.html 作用 启动服务器以开始将响应路由到 cy ...
随机推荐
- Java——枚举
枚举类简介: Java5新增了一个enum关键字(它与class.interface关键字的地位相同),用以定义枚举类.枚举类也是一种特殊的类,所以也具有和类相同的变量和方法,也可以定义自己的构造器. ...
- Flutter 首页必用组件NestedScrollView
老孟导读:昨天Flutter 1.17版本重磅发布,新的版本主要是优化性能.修复bug,有人觉得此版本毫无亮点,但也从另一方面体现了Flutter目前针对移动端已经较为完善,想了解具体内容,文末有链接 ...
- inode block 软硬链接
inode block 软硬链接 1 inode 1.1 inode(索引节点)作用 (1)用于存储文件数据属性信息(2)用于存储数据指针信息 1.2 如何产生 格式化时,创建文件系统 1.3 如何查 ...
- Spring官网阅读(三)自动注入
上篇文章我们已经学习了1.4小结中关于依赖注入跟方法注入的内容.这篇文章我们继续学习这结中的其他内容,顺便解决下我们上篇文章留下来的一个问题-----注入模型. 文章目录 前言: 自动注入: 自动注入 ...
- 【Kafka】Kafka集群基础操作!新手上路必备~
目录 bin目录 Topic命令概览 创建Topic 查看Topic 描述Topic Producer生产数据 Consumer消费数据 增加topic分区数 增加配置 删除配置 删除Topic 所有 ...
- STM32 使用st-link调试遇到写保护 Flash Timeout 问题的解决思路
本文介绍了如何解决STM32芯片Flash写保护导致无法下载程序,无法在线调试的问题:如果您遇到相同的问题,希望本文可以带来一些帮助: 如果本文帮到了您,请帮忙点个赞
- javascript操作字符串间隔显示随机颜色
参考了另一篇文章 https://www.cnblogs.com/zjfree/p/11584177.html,原理在这篇文章已经有详细描述了. 然后结合自己的一些js基础,当然改成jquery也可以 ...
- 瞬间教你学会使用java中list的retainAll方法
retainAll方法简介 当我们有两个list集合的时候,我们可以使用retainAll方法求得两个list集合的子集.retainAll是Collection接口中提供的一个方法,各个实现类有自己 ...
- Python 简明教程 --- 0,前言
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io Life is short, you need Python! -- Bruce Eckel 0,关 ...
- sudo apt-get update 与 sudo apt-get upgrate 的区别
1.sudo gedit /etc/apt/sources.list 源列表里面放置的一行行网址,在这个文件里加入或者注释(加#)掉一些源后,保存.这时候,我们的源列表里指向的软件就会增加或减少一 ...