You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Cypress脚本命令中传递环境变量?

解决Cypress Parallel动态环境变量传递问题

核心问题

你的脚本中引号嵌套导致环境变量${ENVI}未被正确解析,且不同操作系统的shell变量传递规则存在差异,导致之前的命令无法生效。

分系统解决方案

Windows系统

CMD命令行

SET ENVI=QA&&npm run cy:parallel

注:必须用&&将两个命令连在一起,确保环境变量在npm run启动的子shell中生效,分两行执行会导致变量无法传递到子进程。

PowerShell

$env:ENVI="QA"; npm run cy:parallel

类Unix系统(Linux/macOS,Bash/Zsh)

ENVI=QA npm run cy:parallel

脚本优化建议

为了确保${ENVI}能被正确解析,建议调整package.json中cy:parallel脚本的引号格式,去掉外层多余的单引号:

"scripts": {
  "cy:run": "npx cypress run --browser chrome",
  "cy:parallel" : "cypress-parallel -s cy:run -t 4 -d cypress/e2e/features/ -m false -a \"--env ENV=${ENVI}\"" 
}

跨平台兼容方案

如果需要跨Windows和类Unix系统使用统一命令,可以安装cross-env包:

npm install cross-env --save-dev

修改package.json脚本:

"scripts": {
  "cy:run": "npx cypress run --browser chrome",
  "cy:parallel" : "cross-env ENVI=$ENVI cypress-parallel -s cy:run -t 4 -d cypress/e2e/features/ -m false -a \"--env ENV=$ENVI\"" 
}

之后无论哪个系统,都可以用以下命令执行:

ENVI=QA npm run cy:parallel

内容的提问来源于stack exchange,提问作者Tausif Shaikh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 01:57:37