2017-05-23 3 views
0

ich SetupEinrichten einer Aufgabe in package.json bis

"scripts": { 
    "unit-test": "mocha './test/unit/**/*.spec.js'", 
} 

jedoch in package.json eine Aufgabe versuche, wenn ich

laufen
npm run unit-test 

folgenden Fehler werden in der Konsole auf die geworfen Ende des Laufes:

npm ERR! Darwin 16.6.0 
npm ERR! argv "/Users/shreya.vakil/.nvm/v6.9.5/bin/node" "/Users/d.bubble/.nvm/v6.9.5/bin/npm" "run" "unit-test" 
npm ERR! node v6.9.5 
npm ERR! npm v3.10.10 
npm ERR! code ELIFECYCLE 
npm ERR! [email protected] unit-test: `mocha './test/unit/**/*.spec.js'` 
npm ERR! Exit status 1 

jedoch ändern, wenn ich den Befehl

"scripts" : { 
"unit-test": "mocha './test/unit/**/*.spec.js'; exit 0", 
} 

Dieser Fehler wird nicht ausgelöst. Ich bin mir jedoch nicht sicher, ob dies der richtige Ansatz ist.

Antwort

0

Das ursprüngliche Verhalten ist korrekt, wenn ein bisschen hässlich - wenn Ihre Tests fehlschlagen, gibt Mocha einen Exit-Code von 1 zurück, was technisch ein Fehler ist. Das zweite Beispiel macht die Ausgabe hübscher, aber es gibt Probleme, wenn Sie versuchen, Ihre Build-Skripts in andere Tools zu integrieren (z. B. Travis), da sie nicht erkennen können, wann Ihre Tests fehlschlagen.

Die beste Lösung hierfür wäre, die exit 0 loszuwerden und Ihre Version von NPM - the output was made much shorter in v4.6.1 zu aktualisieren. Sie können dazu den folgenden Befehl ausführen:

npm install npm -g 
Verwandte Themen