testing - 如何为 Cypress.io 设置环境

标签 testing cypress environments

我正在为我公司的网络应用程序设置测试套件。我们当时使用四种环境(Production、Regression、Staging、Development)。我在我的 cypress.json 文件中设置了环境变量,但我希望能够将我的环境从回归切换到开发,并强制 cypress 将 baseURL 更改为我的新环境以及指向不同的 cypress.json 文件具有发展变量。 cypress.io 上关于环境的文档让我有点困惑,我不知道从哪里开始。

最佳答案

我使用 package.json 的脚本让 cypress 在不同的环境中运行。您可以在 cypress 命令之前传入环境变量。它看起来像:

"scripts": {
  "cypress:open:dev": "CYPRESS_BASE_URL=http://localhost:3000 cypress open",
  "cypress:open:prod": "CYPRESS_BASE_URL=http://mycompanydomain.com cypress open",
  "cypress:run:dev": "CYPRESS_BASE_URL=http://localhost:3000 cypress run",
  "cypress:run:prod": "CYPRESS_BASE_URL=http://mycompanydomain.com cypress run",
}

如果你想制作 4 个单独的 cypress.json 文件,你可以让它们都根据环境命名,当你运行与该环境对应的 npm 脚本时,只需在运行时将其复制为主 cypress.json测试。

Files: 
./cypress.dev.json
./cypress.prod.json
./cypress.staging.json
./cypress.regression.json

npm scripts:
"scripts": {
    "cypress:run:dev": "cp ./cypress.dev.json ./cypress.json; cypress run;"
} 

更新:

我在 cypress 仍处于测试阶段时写了这篇文章。使用配置标志似乎是一个更简洁的选项:

https://docs.cypress.io/guides/guides/command-line.html#cypress-run

    npm scripts:
    "scripts": {
        "cypress:run:dev": "cypress run -c cypress.dev.json;"
    } 

关于testing - 如何为 Cypress.io 设置环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49804207/

相关文章:

cypress - 从命令行运行时,如何告诉 Cypress 隐藏 Chrome?

cypress - 循环元素后测试字母顺序

heroku - 是否可以将application.css更改为application.css.sass?

用于测试私有(private)方法的 Java 工具?

c# - 如何在 watin 中获取文本框的类型?

java - 响应内容类型为 'null' 。放心异常

unit-testing - 你如何在 TCl 中测试私有(private)方法

javascript - Cypress 更改了 URL,导致应用程序崩溃

firebase - Firebase Web 应用程序上的不同环境