Was ist der beste Weg, BDD / TDD in .NET 2.0 zu implementieren?

stimmen
20

Ich suche eine Test-Suite zu meiner Anwendung hinzuzufügen, aber ich kann nicht für .NET 3.5 auf die neueren Test-Frameworks bewegen.

Hat jemand einen Vorschlag über eine guten Test-Frameworks hat zu benutzen?

Veröffentlicht am 05/08/2008 um 13:50
quelle vom benutzer
In anderen Sprachen...                            


12 antworten

stimmen
9

NUnit und Rhino Anzug gut und die Auto-spöttischen Behälter könnten von Interesse sein.

Wenn Sie bei BDD gesuchte auch dann NBehave ist wahrscheinlich eine gute Wahl. Wenn Sie jedoch nur den Stil der BDD bedeuten, die Unit - Tests bezieht (xSpec) , obwohl Sie mit dem Hinzufügen eines Rahmens wegkommen kann (obwohl Dinge wie specunit hinzufügen tun einige synctactic Zucker), aber Sie könnten wollen , betrachten MSpec ist auch interessant.

Beantwortet am 12/09/2008 um 11:02
quelle vom benutzer

stimmen
7

Schauen Sie sich Rob Conery des Screencasts auf BDD mit MSpec. Sehr beeindruckend http://blog.wekeroad.com/mvc-storefront/kona-3/

edit: ich jetzt diesen Ansatz: http://10printhello.com/the-one-bdd-framework-to-rule-them/

Beantwortet am 17/06/2009 um 13:27
quelle vom benutzer

stimmen
7

Wir verwenden MbUnit und Rihno Mocks und sie erweisen sich als sehr gut zusammen arbeiten. Wenn TDD tun werden Sie fast sicherlich brauchen irgendeine Form von Dependency Injection zu tun, während dies manuell durchgeführt werden kann, sein Wert in einem IoC - Containern wie suchen Schloss Windsor .

Es ist gut lohnt ein Blick auf John Paul Bodhood Bildschirm wirft , um Ihnen den Einstieg. JPB Blog

Beantwortet am 06/08/2008 um 15:16
quelle vom benutzer

stimmen
4

Dies ist wahrscheinlich eine Zusammenfassung dessen, was bereits gesagt wurde, aber für TDD ich persönlich Rhino Mocks und MBUnit verwenden. Rhino Mocks ist ein Mockframework, die freie und Open Source ist. Der Vorteil von Rhino Mocks ist wir magische Saiten nicht bei der Einrichtung Ihrer Erwartungen verwenden müssen, wie Sie in NMock tun.

Ich mag MBUnit weil MbUnit das Konzept der RowTests hat mit dem Sie Ihre Eingaben auf Ihre Testmethode variieren. MBUnit ist auch frei verfügbar.

Sie wollen auch sicherstellen, dass alles, was Sie für Ihre Unit Testing Framework wählen, wird von Ihrem CI (Continuous Integration Server) unterstützt. Nunit ist standardmäßig in Cruise Control.NET unterstützt, und Sie haben eine wenig zusätzliche Arbeit zu tun, um MBUnit in Ccnet zu arbeiten.

Von einer IDE-Sicht müssen Sie TestDriven.NET haben. TestDriven.NET können Sie einen Rechtsklick und Lauftests in der IDE und unterstützt MBUnit und Nunit und andere.

NBehave ist die BDD-Bibliothek ich verwendet habe. Ich habe keine andere verwendet, so konnte ich nicht vergleichen und sie mit Ihnen, aber NBehave wird von Gallio vom MBUnit Team unterstützt, das bedeutet, dass Sie Ihre BDD-Tests, gerade wie Sie Ihre Unit-Tests mit TestDriven.NET laufen können.

Ich würde auch ReSharper sehr empfehlen. Sie werden Ihre Produktivität deutlich steigern mit diesem Refactoring und Führungswerkzeug finden. Es wird Ihnen helfen, mit wechselndem Code, wie Sie Ihre Tests entwickeln.

Hoffe das hilft

Beantwortet am 10/10/2008 um 19:06
quelle vom benutzer

stimmen
4

Ich habe großen Erfolg gehabt mit NUnit als auch.

Ich habe auch verwendet NMock , wenn die Notwendigkeit entsteht für Mock - Objekte. Als zusätzlichen Bonus, die Fabrik für Ihre Mock - Objekte Erstellen der Mockery genannt.

Um das Ausführen von Unit - Tests zu erleichtern, habe ich verwendet TestDriven.NET Unit - Tests zu laufen , wie ich codiert. Außerdem habe ich verwendet , Cruise Control .NET SVN zu beobachten und überprüfen , dass jeder neue begehen baut und übergibt alle Unit - Tests.

Beantwortet am 06/08/2008 um 15:06
quelle vom benutzer

stimmen
4

Für eine Mock - Objekt - Bibliothek habe ich das BSD-Lizenz gefunden Rhino.Mocks eher erfreulich.

Beantwortet am 05/08/2008 um 13:54
quelle vom benutzer

stimmen
3

Ich werde ein shout out haben zu setzen Moq . Es ist sauber Licht Mockframework , die Sie in die Grube des Erfolgs helfen führen.

Die Test-Tools in TFS gebaut sind in Ordnung, werden sie den Job erledigen, sondern kann oft ein wenig umständlich sein, mit zu arbeiten. Die generierten Berichte, Code-Coverage und einige andere Teile sind besonders schlecht, sie machen Sie bei 22 eine Glatze statt 50.

Wenn Sie wirklich die Prüfung lieben, sollten Sie einige Continuous Integration zu versuchen. Sie werden den Schmerz von Regression fühlen schnell und möglicherweise helfen Ihnen, das Endziel schneller.

Unabhängig davon, was Sie versuchen, ein paar heraus und sehen, welche die natürlichste ist, wenn Sie Zeit haben. Viel Glück und glücklich Codierung.

Beantwortet am 27/09/2008 um 05:28
quelle vom benutzer

stimmen
3

NUnit mit TFS verwendet , ist nicht allzu schwierig. Es gibt sogar ein Projekt auf Codeplex dies umzusetzen: NUnit für Teamzusammenstellung, die auch in das Lager der Ergebnisse „veröffentlicht“.

Ich habe es nicht ausprobiert - aber ich würde Kunden, die eine große Investition haben beraten (oder, die haben eine starke Präferenz für sie über das MSTest-Tool) in nUnit, die bei der Umsetzung von TFS interessiert sind mit nUnit weiterhin im Gegensatz zu versuchen, alle konvertieren ihre bestehende Tests.

Beantwortet am 07/09/2008 um 13:58
quelle vom benutzer

stimmen
3

NUnit ist verfügbar unter http://www.nunit.org ich dies selbst vorschlagen würde , wenn sie auf dem MS - Stack arbeiten - die Unterstützung für Nicht-MS - Frameworks in den MVC Vorschauen geschieht , die eine bestimmte Bewegung in der richtigen Richtung zeigt uns zu ermöglichen , alle unsere Stacks anpassen zu passen.

Beantwortet am 05/08/2008 um 14:03
quelle vom benutzer

stimmen
2

Für mein Projekt habe ich NUnit und TestDriven.NET mit großem Erfolg. Sie können entweder eine separate Bibliothek erstellen Sie einfach Ihren Testcode zu hosten oder Sie es in der ausführbaren Datei oder Bibliothek setzen können. Alles hängt, wenn Sie Ihren Produktionscode mögen mit Ihrem Testcode verflechten werden.

Für Dependency Injection, verwende ich ninject in meinem aktuellen Projekt und seine Arbeit groß. Wenn Sie Constructor Injektion verwenden, müssen Sie Ihren Code nicht mit dem [Inject] Attribut Krempel.

Ich habe nicht eine Mock - Bibliothek für mein .NET 2.0 - Projekt , aber für eine anderes .NET 3.5 Projekt verwende ich verwende Moq

Beachten Sie, dass dies alles mit .NET 2.0 und höher funktioniert. (Außer Moq)

Beantwortet am 17/06/2009 um 13:48
quelle vom benutzer

stimmen
2

Ich empfehle die folgenden:

TestDriven.NET - Unit Testing hinzufügen für VS auf , die vollständig mit allen wichtigen Unit - Test - Frameworks einschließlich NUnit, MbUnit usw. integriert ist ...

Typemock Trenner - Ein Mockframework für .Net Unit Testing

NUnit - An OpenSourceUnitTestFrameworkdas in C # ist.

Beantwortet am 15/10/2008 um 15:24
quelle vom benutzer

stimmen
2

NUnit ist immer ein Favorit von mir. Allerdings, wenn Sie TFS als Quelle Steuerelement verwenden Ich schlage vor, Sie mit dem Microsoft-Stack-Stick.

Beantwortet am 05/08/2008 um 13:51
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more