Einsatz von NUnit-Console-Runner laufen alle tests in einem Ordner
Ich versuche, mit NUnit Läufer 2.6.4 führen Sie alle Versuchsanordnungen in meinem test-Ordner. Meine aktuellen Befehl sieht wie folgt aus:
/nologo /noshadow /framework:net-4.0 /xml:.\test\TestResults.xml .\test\*.Test.dll
Leider Nunit-nur wirft ein System.ArgumentException: Illegales Zeichen im Pfad.
Ist es trotzdem kann ich das erreichen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist nicht möglich, verwenden Sie die Platzhalter für die input-Dateien, aber Sie können mehrere test-Bibliotheken in der Kommandozeile:
Vom die offizielle Dokumentation:
UPDATE
Könnte man eine batch-Datei ausführen, den Befehl für alle Dateien in dem Ordner:
Den
dir
Befehl wählt die Namen der Dateien aus der.\test\
Ordner mit der*.Test.dll
Vorlage. Die Namen sind die an den Befehl übergeben (nunit-console
) eins nach dem anderen.Können Sie verwenden Sie folgenden PowerShell-Befehl (für NUnit3, für NUnit2 ändern Läufer name):
Befehl aus Vorherige Antwort läuft jeder test Montage in separaten nunit-Prozess synchron. Hier präsentiert Befehl führt alle test Baugruppen in Einzel-nunit-Instanz, die es ermöglicht, zu nutzen, die engine built-in parallel-test ausführen.
Bemerkungen
Erinnern zu zwicken Verzeichnis Suche Muster. Gegeben Beispiel wird nur ausgeführt, Baugruppen endet mit
.Tests.dll
und innen\bin\Debug
Verzeichnisse.Bewusst sein
Unique
filtern - Sie können nicht wollen, es zu haben.Versuchen:
Einem kleinen kniff auf die Antwort von one_mile_run um das Problem zu lösen, die einen Fehler verursacht:
Einer Methode, die ich haben Erfolg mit hatte, um tests ausführen, die in einem bestimmten Ordner zu verwenden, die
where
option. Die=~
syntax für die Verwendung von Regex (.NET-Geschmack) zu entsprechen namespace vor. Wenn die namespaces entsprechen der Ordnerstruktur Namen per Konvention werden Sie das gewünschte Ergebnis zu erhalten. Sie wollen Ihre regulären Ausdruck für die top-level-Ordner, die Sie sind targeting.