Es scheint mir, dass jeder NUnit benutzt, ohne die anderen Optionen in Betracht zu ziehen. Ich denke das liegt an:
- Jeder ist bereits damit vertraut, sodass er keine neue API erlernen muss.
- Es ist bereits mit dem Continuous Integration Server für die Zusammenarbeit mit NUnit eingerichtet.
Irre ich mich dabei
Ich habe mich kürzlich entschlossen, xUnit in einem meiner eigenen Projekte zu verwenden, und ich liebe es! Für mich ist das viel sinnvoller und konzeptionell scheint es ein klarer Fortschritt von NUnit zu sein.
Ich würde gerne Meinungen darüber hören, welches Framework das beste ist - ohne die Notwendigkeit, es zu lernen oder Ihre automatisierten Tests neu zu konfigurieren.
.net
unit-testing
frameworks
nunit
xunit
Niemand
quelle
quelle
Antworten:
MSTest
Ich persönlich benutze MSTest. NUnit ist wirklich nett, aber in VS2010 ist MSTest bereits vollständig in die IDE integriert und es gibt vollständige Projektvorlagen dafür. Für .NET, wenn Sie 2010 verwenden, ist MSTest der richtige Weg (MSTest in VS2008 ist meines Erachtens nicht auf dem neuesten Stand), nur für die Codeabdeckung, den Test-Runner und andere Tools, die Ihnen zur Verfügung stehen out of the box. (Wenn Sie CodeRush oder R # verwenden, haben sie wirklich großartige Testläufer / Tools für andere Test-Frameworks.)
Edit: Ich bin seitdem zu XUnit übergegangen. : D
quelle
Ich habe vor einigen Jahren begonnen, Gallio / MbUnit zu verwenden . Und die Funktionen und Juwelen, die es bietet, sind so mächtig, dass ich meine Wahl nie bereut habe. Tatsächlich bin ich jetzt Teil des Entwicklungsteams des Gallio OSS-Projekts. so kann ich dazu beitragen, es noch fantastischer zu machen.
Das Wiki ist sicherlich ein guter Ausgangspunkt, um Gallio und MbUnit v3 zu entdecken. Es fehlen noch einige Kapitel, aber es ist schon recht nützlich.
quelle
Einen auszuwählen und zu verwenden, ist hier vielleicht der wichtigste Schritt.
Persönlich würde ich aus mehreren Gründen NUnit wählen . In erster Linie ist die Werkzeugunterstützung. Es gibt ein kostenloses Add-In für Visual Studio 2010 , das von allen gängigen Plug-Ins von Drittanbietern unterstützt wird. Jedes einzelne Build-System, Test Coverage Utility und CI-Server unterstützt dies. In vielen Fällen ohne Plugin. Auf Code-Ebene kann es praktisch jedes Szenario verarbeiten - datengesteuerte Tests, Vererbung, abstrakte Testklassen, generische Testklassen, Einrichtung, Herunterfahren usw. In gewissem Maße haben wir xUnit, weil NUnit zu funktionsreich geworden ist und mächtig.
Über NUnit hinaus könnte man, wie von Yann erwähnt, ein ziemlich anständiges Argument für MBUnit + Gallio abgeben - es ist ein sehr solides Framework. Das, was Sie vermeiden sollten, wenn es überhaupt möglich ist, ist MSTest, das meiner Meinung nach einige fatale Mängel aufweist. Fehler sind einige der Einschränkungen Ihrer Testklassen, z. B. keine Vererbung, und Abhängigkeiten von professionellen oder besseren Visual Studio-SKUs. Dazu gehört, dass Visual Studio auf dem Build-Server installiert ist, um die Tests auszuführen.
quelle
Der eine Grund ist, dass NUNIT mehr zum Industriestandard als xUnit geworden ist. Aber ich persönlich liebe xunit.
quelle