Wie legt man die Ausführungsreihenfolge von Mocha-Testfällen in mehreren Dateien fest?
Ich habe zwei java-Skript-Dateien, die enthalten mocha-test-Fällen.
//----------abc.js -------------
describe("abc file", function(){
it("test 1" , function(){
assert.equal(20 , 20);
});
});
//---------xyz.js--------------
describe("xyz file", function(){
it("test 1" , function(){
assert.equal(10 , 10);
});
});
ich Sie in einen Ordner namens test
und wenn ich führen Sie die mocha
Befehl immer Inhalt der ersten Datei(abc.js) ausgeführt wird und dann xyz.js.
Ich dachte, das könnte von lexikalisch und umbenannte Dateien als
abc.js => xyz.js
xyz.js => abc.js
aber nun den Inhalt der xyz.js (zuvor hieß es, als abc.js) zuerst ausgeführt. ich möchte wissen, wie kann ich die Reihenfolge der Ausführung dieser test-Dateien.
InformationsquelleAutor der Frage tnishada | 2015-01-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mokka hat eine
--sort
(kurz-S
) option, die möglichen test-Dateien:InformationsquelleAutor der Antwort Louis
In der zweiten Datei, benötigen die erste:
Mokka laufen die tests in der Reihenfolge der
describe
Anrufe ausführen.InformationsquelleAutor der Antwort Peter Lyons
Ich Folgen einem völlig separaten Lösung.
Setzen Sie alle Ihre tests in einem Ordner mit dem Namen test/und
Erstellen Sie eine Datei tests.js in das root-Verzeichnis in der Reihenfolge der Ausführung
Und in den tests-Dateien one.js, two.js und so schreiben Sie Ihre einfache mocha tests
diese Weise, wenn Sie wollen, führen Sie Sie in der Reihenfolge, die Sie definiert haben, dann führen Sie einfach
mocha tests.js
InformationsquelleAutor der Antwort Priyanshu Jindal
Seit Mokka sortiert die Dateien in alphabetischer Reihenfolge, ich in der Regel Präfix meiner test-Dateien, die Namen mit zahlen, wie:
0 - util.js
1 - something low level.js
2 - something more interesting.js
etc.
Zudem wirklich leicht zu pflegen (kein gulp grunt oder nicht Unsinn, keine Bearbeitung Ihres Pakets.json...), es bietet den Vorteil, dass:
1 - something.js
aber es gibt keine Ausfälle in0 - base.js
dann ist es wohl die Schuld der Schicht abgedeckt1 - something.js
Wenn Sie echte unit-tests natürlich die Reihenfolge sollte eigentlich egal sein, aber ich bin nur selten in der Lage zu gehen mit unit-tests alle Weg.
InformationsquelleAutor der Antwort djfm
Wenn Sie das bevorzugen einer bestimmten Reihenfolge, können Sie die Liste der Dateien (in der Reihenfolge) als Kommandozeilen-Argumente, um
mocha
, z.B.:$ mocha test/test-file-1.js test/test-file-2.js
Vermeiden Sie eine Menge eingeben, jedes mal, die Sie ausführen möchten, könnten Sie diesen in eine
npm
script in Ihrempackage.json
:Dann führen Sie Ihre suite von der Befehlszeile aus:
Oder wenn Sie Schlucken, Sie konnte erstellen eine Aufgabe in Ihrem
gulpfile.js
:Führen
$ gulp test
.InformationsquelleAutor der Antwort David Schneider