常见的环境变量设置方式

可参考这篇文章:https://www.cnblogs.com/poloyy/p/13056393.html

前言

  • 里面写的设置方式针对的是单个环境
  • 但实际项目可能会存在多个环境(开发、测试、预发、生产),不同环境的环境变量就会不一样
  • 如果还是单纯只用上面讲到的方式,切换不同环境时,还得手动修改环境变量,极其不方便

使用 cypress.env.json

前言

  • Cypress 允许针对不同测试环境使用多个配置文件并且在运行时动态指定
  • 从而免除每切换一次环境,就需要更改环境变量值的情况

具体操作步骤

创建文件夹和文件

  • 在 cypress安装目录下创建一个 config 文件夹
  • 文件夹下建立两个文件,分别命名为 cypress.dev.json,cypress.qa.json

Cypress系列(67)- 环境变量设置指南 - 图1

cypress.dev.json 代码

  1. {
  2. "baseUrl": "http://localhost:7077/login",
  3. "env": {
  4. "username": "jane.lane",
  5. "password": "password123"
  6. }
  7. }

cypress.qa.json 代码

  1. {
  2. "baseUrl": "http://localhost:7077/login",
  3. "env": {
  4. "username": "wrongUser",
  5. "password": "wrongPwd"
  6. }
  7. }

在 cypress 安装目录/plugins/index.js 中更改配置如下

Cypress系列(67)- 环境变量设置指南 - 图2

index.js 的代码

Cypress系列(67)- 环境变量设置指南 - 图3

测试用例代码

Cypress系列(67)- 环境变量设置指南 - 图4

命令行运行 cypress 命令

yarn cypress:open —env configFile=qa

  • 上述命令打开 cypress 运行器(Test Runner)
  • 当然 configFile 作为环境变量可以有多种方式传递,参照一开始的文章哦

查看运行器的配置项

Cypress系列(67)- 环境变量设置指南 - 图5

测试结果

点击即可运行测试用例文件
Cypress系列(67)- 环境变量设置指南 - 图6

运行时动态指定环境变量

  • 上面讲的使用 cypress.env.json 可以指定测试环境运行,但需要额外创建文件
  • 除 cypress.env.json 外,在运行时指定测试环境的同时仍然可以使用 cypress.json 文件

cypress.json 代码

  1. "targetEnv": "dev",
  2. "env": {
  3. "dev": {
  4. "username": "iTesting",
  5. "password": "weChat",
  6. "Url": "http://localhost:5883"
  7. },
  8. "qa": {
  9. "username": "wrongUser",
  10. "password": "wrongPassword",
  11. "Url": "http://www.test.com:5883"
  12. }
  13. }

support/index.js 代码

Cypress系列(67)- 环境变量设置指南 - 图7

命令行运行 cypress 命令

指定需要运行的测试环境

  1. yarn cypress:open --env testEnv=qa

https://www.cnblogs.com/poloyy/p/13840462.html