Maison > Questions et réponses > le corps du texte
J'utilise Cypress pour exécuter des tests sur mon projet VueJS.
Je voulais juste lancer le test avec le navigateur que je voulais, alors j'ai créé un .env comme ci-dessous
BROWSER=edge
Dans le fichier package.json, j'ai écrit la commande suivante :
"scripts":{ "cy:run" : "cypress run --browser %BROWSER%" }
Je sais que je peux saisir des commandes comme celle-ci
"cy:run" : "cypress run --browser edge"
Mais la raison pour laquelle j'ai créé le fichier .env est qu'une fois le test terminé, je souhaite enregistrer les résultats du test avec le nom du navigateur. Ainsi, lorsque je change de navigateur dans le .env, j'exécute simplement la commande npm.
Mais ça n’a pas fonctionné. Cypress ne parvient pas à détecter le navigateur souhaité. J'ai essayé de nombreuses méthodes, dont celle-ci.
Quelqu'un peut-il me dire comment le faire fonctionner ? Merci beaucoup.
J'ai essayé d'utiliser un navigateur spécifique et une fois le test terminé, les résultats du test ont été enregistrés sous le nom que je voulais, ce qui signifie que le NAVIGATEUR dans le fichier .env a fonctionné.
P粉9501288192024-03-26 17:33:40
L'option "Navigateur" complète nécessite deux tirets
"scripts":{ "cy:run" : "cypress run --browser %BROWSER%" }
Ou utilisez un tiret pour représenter le raccourci "-b"
"scripts":{ "cy:run" : "cypress run -b %BROWSER%" }
P粉4974634732024-03-26 09:28:56
J'ai résolu ce problème en utilisant cross-env
Tout d'abord, j'utilise npm i cross-env
安装 cross-env
Dans mon package.json
, je l'ai modifié comme ça
"scripts":{ "run:env" : "cross-env BROWSER=\"edge\" npm run cy:run" "cy:run" : "cross-env-shell cypress run --browser=$BROWSER" }
Puis je cours npm run run:env
Tout fonctionne bien maintenant.
Même si je supprime le fichier .env, process.env.BROWSER est toujours disponible