我正在使用 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粉9501288192024-03-26 17:33:40
完整的「瀏覽器」選項需要兩個破折號
"scripts":{ "cy:run" : "cypress run --browser %BROWSER%" }
或用一個破折號表示快捷方式「-b」
"scripts":{ "cy:run" : "cypress run -b %BROWSER%" }
P粉4974634732024-03-26 09:28:56
我透過使用 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 仍然可用