Wie führt man Komponententests über die Befehlszeile aus?
Googelte ich und fand die unten hilfreiche Hinweise. Derzeit möchte ich ausführen von der Befehlszeile aus (für die einfache Ausführung & Schnelligkeit) in Fällen,:
- Einen bestimmten test (dh. einen test geschrieben durch ein Verfahren gekennzeichnet [TestMethod()])
- Alle tests in einer Klasse
- Alle betroffenen tests der aktuellen TFS ausstehende änderung von mir.
- Alle tests
- Alle tests mit Ausnahme der Kennzeichnung als Kategorie [TestCategory("einige-Kategorie")]
Ich bin mir nicht sicher, wie kann ich Schreibe eine korrekte Befehl für meine Bedürfnisse vor.
Referenzen:
- die MSTest.exe http://msdn.microsoft.com/en-us/library/ms182487.aspx
- die MSTest.exe's detaillierte Optionen http://msdn.microsoft.com/en-us/library/ms182489.aspx
- Erhalt das Ergebnis http://msdn.microsoft.com/en-us/library/ms182488.aspx
[Bearbeiten]
Nach einer Weile, fand ich die unten nützliche Tipps.
- führen Sie Visual Studio unit-tests mithilfe von MSTest.exe liegt an
%ProgramFiles%\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe
in meinem Fall. - mit
/testcontainer:Path\To\Your\TestProjectAssembly.dll
um anzuzeigen, wo Ihre tests codiert werden. Sie können mehrere '/testcontainer " - Optionen, falls erforderlich. - mit
/test:TestFilter
zu filtern, die tests zu laufen. Beachten Sie, dass dieser filter angewendet wird der vollständige test Methode name (dh. FullNamespace.Classname.MethodName)
InformationsquelleAutor der Frage Nam G VU | 2010-10-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Derzeit kann ich habe einige Antworten für meine Bedürfnisse:
Einen bestimmten test (ie. einen test geschrieben eine Methode, die gekennzeichnet
[TestMethod()]
)Verwenden
MSTest.exe
/container:
TheAssemblyContainingYourSpecifictest/test:
TheSpecificTestNameAlle tests in einer Klasse
Verwenden
MSTest.exe
/container:
TheAssemblyContainingYourClass/test:
TheClassNameWithFullNamespaceBeachten Sie, dass die
/test:
ist der filter, der verwendet den vollständigen Namen der Klasse beim filtern.Die anderen sind noch unbekannt. Bitte disscuss wenn man weiß wie.
InformationsquelleAutor der Antwort Nam G VU
Für die Anzahl 4. Ausführen aller tests in einer Baugruppe ist es ganz einfach:
mstest /testcontainer:YourCompiledTestAssembly.dll
InformationsquelleAutor der Antwort Christopher Maddock
Für Frage
Verwenden
Wenn Sie brauchen, um auszuschließen, die mehr als eine Kategorie verwenden
Referenz: /Kategorie-filter
InformationsquelleAutor der Antwort Michael Freidgeim
Vielleicht haben Sie Interesse, indem Sie die Gallio bundle. Es bietet einen kostenlosen-common-automation-Plattform für die Ausführung Ihrer tests (MSTest, MbUnit, NUnit, xUnit, etc.) mit verschiedenen test-Läufer (GUI, Kommandozeile, PoSh, plugins für 3rd-party-tools, etc.)
Insbesondere dürfen Sie verwenden möchten Gallio.Echo das ist eine nette command-line-test-runner:
Des Gallio test-Läufer haben auch Filterfunktionen zu laufen, einen Teil Ihrer unit-tests nur (z.B. pro Kategorie, pro Leuchte, etc.)
InformationsquelleAutor der Antwort Yann Trevin