Cypress系列(42)- Cypress.env、Cypress.env 命令详解

323 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第12天,点击查看活动详情

作用

作用范围

  • 使用 Cypress.config 设置的配置项仅在当前规范文件(js 测试文件)的范围内生效
  • Cypress 隔离运行每个测试文件:在一个测试文件中更改的配置在其他测试文件中不可见

语法格式

Cypress.config()
Cypress.config(name)
Cypress.config(name, value)
Cypress.config(object)

name

要获取或设置的配置的名称

value

要设置的配置值

object

使用对象属性( {} 的格式)设置多个配置项 

实际栗子

代码

运行结果

可以看到统一修改的配置项

重点

  • 获取的配置项是依照上图的 Configuration 来拿的
  • 使用 Cypress.config 设置配置项会覆盖已有的配置项

作用

作用范围

  • 使用 Cypress.env 设置的环境变量仅在当前规范文件(js 测试文件)的范围内生效
  • Cypress 隔离运行每个测试文件:在一个测试文件中更改的环境变量在其他测试文件中不可见

语法格式

Cypress.env()
Cypress.env(name)
Cypress.env(name, value)
Cypress.env(object)

name

要获取或设置的环境变量名称

value

要设置的环境变量值

object

使用对象属性( {} 的格式)设置多个环境变量

实际栗子

代码

运行结果

重点

  • 获取的环境变量是依照上图的 env 来拿的
  • 使用 Cypress.env 设置环境变量会覆盖已有的环境变量

注意事项

首次运行当前测试文件后设置的环境变量会一直保存到结束测试(关闭浏览器或 Stop),什么意思??

测试用例代码

我将会删掉 user 这个变量以及修改 pwd 这个变量名

运行结果

共 10 个环境变量

修改后的测试用例代码

已经删掉了 user 和改了 pwd

修改后的运行结果

共 11 个环境变量,pwd 和 user 还在

总结

只有 Stop 和手动关闭浏览器然后再次开始测试才会重置环境变量