Ich versuche, Unit-Tests mit AngularJS durchzuführen. Ich habe Bower und Grunt bereits installiert, also sollte ich in der Lage sein, die Tests durchzuführen. Wenn ich jedoch „grunt test“ über das Terminal (in meinem Fall Git Bash) ausführe, erhalte ich die Fehlermeldung „Please set env variable CHROME_BIN“. Laut dieser StackOverflow-Frage sollte ich karma.conf.js und karma-e2e.conf.js ändern, aber ich kann sie nicht ändern, weil andere Leute im Projekt Probleme haben werden.
So beheben Sie den Fehler „Bitte legen Sie die Umgebungsvariable CHROME_BIN fest“, wenn Angular.js mit Grunt ausgeführt wird
trysis
David Tryon
Sie müssen einstellen CHROME_BIN
als neue Umgebungsvariable. Setzen Sie den Wert auf den Pfad zu chrome.exe
. Dieser Wert ist normalerweise: C:/Program Files (x86)/Google/Chrome/Application/chrome.exe
Hier sind die Dokumente die beschreiben, wie jeder Betriebssystemtyp konfiguriert wird.
-
Ja, aber ich habe mehrere andere Leute an demselben Projekt, und ich arbeite mit Windows, aber andere führen andere Betriebssysteme aus. Was könnten wir ändern, damit wir alle erfolgreich testen können? Nehmen Sie nur wichtige Betriebssysteme wie Mac und Linux an.
– trysis
21. September 2013 um 15:03 Uhr
-
Alle diese Betriebssysteme haben ein Konzept einer PATH-Umgebungsvariablen. Es würde also unter das Einrichten einer Entwicklungsumgebung für Ihr Projekt fallen. Dies ist der dokumentierte (und vorgeschlagene) Weg, um Karma-Tests durchzuführen.
– David Tryon
21. September 2013 um 16:13 Uhr
-
Entschuldigung, es reicht nicht aus, es einfach zur PATH-Variablen hinzuzufügen. CHROME_BIN muss eine neue Umgebungsvariable sein. Aber das Gleiche gilt. Alle Betriebssysteme unterstützen das Hinzufügen einer persistenten Umgebungsvariable.
– David Tryon
21. September 2013 um 16:29 Uhr
-
Aber werden sie alle dieselbe Variable unterstützen? Oder wenn nicht, können wir jedem Betriebssystem eine andere Variable zuweisen?
– trysis
22. September 2013 um 0:26 Uhr
-
Hier sind die Dokumente. Wenn Sie dies befolgen, sollte es Ihnen gut gehen: github.com/karma-runner/karma/blob/master/docs/config/…
– David Tryon
22. September 2013 um 8:56 Uhr
Der Binärpfad des Browsers variiert je nach Betriebssystem.
Ändern des Pfads zur Chrome-Binärdatei:
$ export CHROME_BIN=/usr/local/bin/my-chrome-build
Ändern des Pfads zur Chrome Canary-Binärdatei:
$ export CHROME_CANARY_BIN=/usr/local/bin/my-chrome-build
Ändern des Pfads zur PhantomJs-Binärdatei:
$ export PHANTOMJS_BIN=$HOME/local/bin/phantomjs
-
Dieser Pfad funktioniert in meinem Fall: export CHROME_BIN=/usr/bin/chromium-browser
– Irgendein Russisch
1. April 2020 um 15:19 Uhr
Für Windows/Chrome wäre dies gemäß dem cmd-Feld (standardmäßig)
C:\SET CHROME_BIN=C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
Installieren Sie pupeeter und dann sollte es für Linux und Windows funktionieren
karma.conf.js
module.exports = function (config) {
process.env.CHROME_BIN = require('puppeteer').executablePath();
config.set({ ...