如何通过命令行在 cypress.json 文件中设置环境变量?(Angular CLI - nrwl nx)

5 ui-automation angular cypress nrwl nrwl-nx

我是 cypress 的新手,并且每天都在学习,我们正在尝试在 angular 项目中使用 cypress 实施 e2e 测试。

当我想通过命令行在 cypress.json 文件中设置 env 变量时遇到问题

这是我的 cypress.json 文件

{
  "defaultCommandTimeout": 10000,
  "viewportWidth": 1440,
  "viewportHeight": 900,
  "env": {
    "environment": "Stagging"
  },
  "fileServerFolder": ".",
  "fixturesFolder": "./src/fixtures",
  "integrationFolder": "./src/integration",
  "pluginsFile": "./src/plugins/index",
  "supportFile": "./src/support/index.ts",
  "video": true,
  "videosFolder": "../../../dist/cypress/apps/web/e2e/videos",
  "screenshotsFolder": "../../../dist/cypress/apps/web/e2e/screenshots",
  "chromeWebSecurity": false
}
Run Code Online (Sandbox Code Playgroud)

我想动态地关联 Environment 值,在我的情况下,从 Staging 到 dev。我正在尝试使用以下 ng 命令

ng e2e --env environment=Dev
Run Code Online (Sandbox Code Playgroud)

这让我犯了这个错误 在此处输入图片说明

当我在 POC 上工作时,这个选项运行良好,正如他们在 cypress 文档中提到的那样(https://docs.cypress.io/guides/guides/environment-variables.html#Setting

有人可以帮我解决这个问题吗?

Arn*_*rod 4

您需要运行cypress open --env environment=Dev而不是ngCLI 命令。如果您想直接运行测试,而不是打开测试运行程序,则使用cypress run --env environment=Dev