在 package.json 中使用 .env 变量:分步指南
P粉798343415
P粉798343415 2024-03-25 22:08:51
0
2
425

我正在使用 Cypress 对我的 VueJS 项目运行一些测试。

我只想用我想要的浏览器运行测试,所以我制作了一个如下所示的 .env

BROWSER=edge

在 package.json 文件中,我编写了如下命令:

"scripts":{
      "cy:run" : "cypress run --browser %BROWSER%"
}

我知道我可以这样输入命令

"cy:run" : "cypress run --browser edge"

但是我创建 .env 文件的原因是测试完成后,我想用浏览器的名称保存测试结果。因此,当我更改 .env 中的浏览器时,我只运行 npm 命令。

但是没有成功。 Cypress 无法检测到我想要的浏览器。 我尝试了很多方法,包括这个。

谁能告诉我如何让它发挥作用?非常感谢。

我尝试过使用特定的浏览器,测试完成后,测试结果以我想要的名称保存,这意味着.env文件中的BROWSER可以使用。

P粉798343415
P粉798343415

全部回复(2)
P粉950128819

完整的“浏览器”选项需要两个破折号

"scripts":{
  "cy:run" : "cypress run --browser %BROWSER%"
}

或用一个破折号表示快捷方式“-b”

"scripts":{
  "cy:run" : "cypress run -b %BROWSER%"
}
P粉497463473

我通过使用 cross-env

解决了这个问题

首先,我使用 npm i cross-env 安装 cross-env

在我的package.json中,我这样修改

"scripts":{
   "run:env" : "cross-env BROWSER=\"edge\" npm run cy:run"
   "cy:run" : "cross-env-shell cypress run --browser=$BROWSER"
 }

然后我运行npm run run:env

现在一切正常。

即使我删除了 .env 文件,process.env.BROWSER 仍然可用

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板