NUnit vs Visual Studio 2010 MSTest?
Merke ich, dass es viele ältere Fragen der Bewältigung der Allgemeinen Frage, NUnit v MSTest für Versionen von Visual Studio 2008 (wie diese eine).
Microsoft haben eine Geschichte bekommen, die Dinge richtig in Ihrer 3. version. Für MSTest, dass VS2010.
Haben Sie getan, so dass mit MSTest? Würden Sie es in einem neuen Projekt den Vorzug zu NUnit?
Meinem konkreten Anliegen:
- Geschwindigkeit
- Ausführung von tests in CruiseControl.NET (entweder Kommandozeile oder MSBuild-Aufgabe)
- code-coverage-reports aus CC.NET
- kannst du MSTest tests im debug-mode
(Wir verwenden ReSharper, so dass test-Läufer sind kein Problem für uns. Wir haben NUnit für die letzten paar Jahre. Wir haben keine TFS.)
InformationsquelleAutor der Frage David White | 2010-03-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Meine Empfehlung ist folgende: wenn NUnit erfüllt Sie - nutzen Sie es, vergessen Sie MSTest
InformationsquelleAutor der Antwort Andrey
Korrigieren einige alte Informationen auf den thread;
InformationsquelleAutor der Antwort Euan Garden
Habe ich hauptsächlich verwendet, NUnit, einige xUnit und einige MSTest. Sie scheinen Funktionalität gleichwertig, aber ich weiß nicht, wie die MSTest-test-runner. Es läuft in visual studio, so dass es entweder Massen dem Bildschirm oder auf einem anderen monitor immer in den Weg, wenn ich die Registerkarte in visual studio. (Ich ausführen von NUnit auf einem anderen monitor, aber es doesn ' T decken alles, was auf diesem monitor, wenn ich den Fokus visual studio). Es braucht zu viele Klicks, um herauszufinden, welcher test fehlgeschlagen ist, und warum.
NUnit können im hintergrund ausgeführt, bis ein test fehlschlägt, an welcher Stelle es zeigt dir Informationen über den Bruchtest. Dies scheint die ideal für die Aufbewahrung red/green/refactor-reibungslos.
InformationsquelleAutor der Antwort Frank Schwieterman
NÖ. Gleiche Fragen bezüglich der Anwendungsdomänen und Montage der Lösung noch vorhanden ist. Ich möchte vermeiden, es sei denn, Sie wollen das neue, das gute für den anderen funktionellen Tests oder die integration mit Team System.
InformationsquelleAutor der Antwort Preet Sangha
Ich weiß nicht viel über CruseControl.net aber Sie können Debuggen von tests. Wir haben derzeit keine TFS verwenden, und die MSTest ist, für uns zu arbeiten.
InformationsquelleAutor der Antwort Nathan Tregillus
Wenn Sie denken, Sie werde nie ausführen der tests im 64 bit-Modus, die Verwendung von NUnit. MsTest ist nur x86.
InformationsquelleAutor der Antwort bjornhol
Einen großen Unterschied zwischen den beiden ist, dass MSTest macht eine Kopie des aktuellen DLLs jedes mal, wenn es läuft ein test. Wenn du tust, TDD und ausführen von tests Häufig, dies kann fressen eine Menge Speicherplatz auf der Festplatte.
Wenn Sie mit MSTest, Sie können ändern Sie diese Einstellung in Extras > Optionen > Test-Tools > Test-Durchführung. "Begrenzen Sie die Anzahl der alten Test-Ergebnisse" auf 25 eingestellt ist, standardmäßig in Visual Studio 2010. Ich in der Regel ändern Sie es bis 1.
InformationsquelleAutor der Antwort Ryan Lundy
MSUnit läuft Ihr test-Fällen und unter Bedingungen, die unterschiedlich ist von der tatsächlichen Ausführung Umgebung. Insbesondere die bereitgestellten Dateien unterscheiden sich von denen, die bereitgestellt werden, wenn man mit dem eigentlichen Projekt. Trotzdem, es ist die [DeploymentItem]-Attribut, um anzugeben, welche Dateien eingesetzt werden soll, die von MSUnit. Also, wenn Ihre Anwendung hängt von jedem externen
Dateien, wie
dann MSUnit ist nicht die richtige Wahl, weil die MSUnit tests nie abdecken, was Ihr Datei-system Aussehen wird-wie in execution environment. Das Visual Studio-Projekt-Datei-Einstellungen für das bereitstellen von Dateien (Kopieren, Inhalte, etc.) ignoriert die MSUnit Läufer. So werden diese Einstellungen nicht getestet werden kann.
InformationsquelleAutor der Antwort mischka