2017-03-22 4 views
0

Mocha führt eine unterschiedliche Anzahl von Komponententests mit zwei scheinbar gleichen Befehlen aus. Als ich Mokka mit npm test laufen bekomme ich folgende Ausgabe:Unerwartetes Verhalten beim Ausführen von Mokka mit `npm test`

> [email protected] test /Users/xxx/repos/some-path 
> rm -rf ./.unit-test-build/ && tsc && mocha ./.unit-test-build/**/*.spec.js --reporter progress 


    [▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬] 

    35 passing (78ms) 

Die Sache ist; Ich habe mehr als 35 Unit Tests in diesem Projekt. Der Test-Befehl wird wie folgt in package.json definiert:

{ 
    "scripts": { 
    "test": "rm -rf ./.unit-test-build/ && tsc && mocha ./.unit-test-build/**/*.spec.js --reporter progress", 
    } 
} 

Jetzt ist hier der seltsame Teil. Wenn ich den obigen Befehl und fügen Sie sich in einen Terminal zu kopieren, erhalte ich die folgende Ausgabe:

$ rm -rf ./.unit-test-build/ && tsc && mocha ./.unit-test-build/**/*.spec.js --reporter progress

[▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬] 

    123 passing (1s) 

Dieses Verhalten wird erwartet, 123 Unit-Test vorbei ist.

Warum führt Mocha 35 Tests statt 123, wenn ich npm test verwende? Wie kann ich das beheben?

Ich verwende Knoten v7.6.0, npm 4.1.2 und Mokka 3.2.0.

Antwort

1

Gefunden die Antwort in another question.

Sie benötigen ' um das glob Muster zu setzen, wie folgt aus:

          ⬇        ⬇ 
rm -rf ./.unit-test-build/ && tsc && mocha './.unit-test-build/**/*.spec.js' --reporter progress