Wie kann ich TestDriven.Net nach der Installation von NUnit von NuGet dazu zwingen, die von NuGet referenzierte NUnit-DLL zu verwenden?

9

Ich versuche, eine Visual Studio-Lösung einzurichten, die Folgendes erleichtert:

Ich möchte:

  • Um alle Referenzen und Abhängigkeiten zu behalten unter der Wurzel meiner Lösung Verzeichnisstruktur

  • Die Möglichkeit, "Test mit NUnit ", Befehl, wenn ich mit der rechten Maustaste klicke auf meinem Projekt, dass TestDriven.NET bietet.

Ich möchte NICHT:

  • Um die Version von NUnit zu verwenden TestDriven.NET installiert sich selbst

Ich möchte:

  • Der Befehl "Test mit NUnit", um die Version von NUnit, das NuGet unter meinem installiert Unterverzeichnisse der Lösung für mich

Mehr Details und was ich bereits versucht habe:

Wenn Sie TestDriven.NET installieren, wird die eigene Version von NUnit in einem Pfad wie folgt abgelegt:

  • \ Programme (x86) \ TestDriven.NET 3 \ NUnit \ 2.5

Wenn Sie NuGet verwenden, um die neueste Version von NUnit zu installieren, wird NUnit in einem Pfad wie folgt platziert:

  • Solution_root \ packages \ NUnit.2.5.10.11092

NuGet fügt automatisch einen Verweis auf \ packages \ NUnit.2.5.10.11092 \ lib \ nunit.framework.dll für Sie hinzu. Diese Referenz ist ziemlich wertlos, wenn Sie einfach NUnit-Tests mit dem TD.Net-Menü ausführen möchten, weil TD.Net nicht die NUnit-DLL verwendet, die NuGet gerade für Sie eingerichtet hat.

  • Wie erzwinge ich, dass das Menü von TestDriven.Net die referenzierte NUnit-DLL im Pfad meiner Lösung anstelle der NUnit-DLL verwendet, die unter \ Programme (x86) \ TestDriven.NET 3 \ NUnit \?
  • installiert wird

ODER

  • Wenn das nicht möglich ist, gibt es eine einfache Tastenkombination / einen Menübefehl, um die SpecFlow-Tests mit der NUnit auszuführen, die sich in meinem Lösungsordner befindet, ohne TestDriven.Net zu verwenden?

Warum versuche ich das?

Ich habe NUnit mit NuGet installiert, damit ich die Test-Framework-Bibliotheken in meiner Lösung und unter der Quellcodeverwaltung behalten konnte. Ich brauche die Fähigkeit, Dinge wie nunit.framework.dll unter dem Pfad meiner Lösung (Solution_root \ packages \ NUnit.2.5.10.11092) zu referenzieren und NICHT von (\ Programme (x86) \ TestDriven.NET 3 \ NUnit \ 2.5) zu referenzieren. .

Ich habe die Vorschläge bereits hier ausprobiert:

  • Ссылка

  • und es scheint immer noch die TestDriven.Net-Version von NUnit zu starten, anstatt die, die NuGet für mich installiert.

Ich möchte auch nicht manuell die NUnit-Dateien kopieren und ersetzen, die von TD.Net installiert wurden, da dies keine lösungsspezifischen Abhängigkeitsdateien und Isolation unter Quellcodeverwaltung erlaubt.

    
Kerry 05.05.2011, 00:30
quelle

1 Antwort

3

Nicht sicher, dass Sie genau danach suchen, aber hier geht es:

Unter Visual Studio (ich benutze 2010):

  1. Gehe zu Extras- & gt; Optionen- & gt; Test Driven- & gt; Testläufer
  2. Dieser Abschnitt listet alle vorkonfigurierten Test-Runner auf, die mit TD.NET ausgeliefert werden.
  3. Regedit ausführen.
  4. Gehe zu: * HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ MutantDesign \ TestDriven.NET \ TestRunners * Dies wird unter 32-Bit-Betriebssystem anders sein.
  5. Fügen Sie einen neuen Schlüssel NUnit 2.5.X hinzu (kopieren Sie einfach einen anderen Schlüssel und ändern Sie die Einstellungen, die Sie benötigen).

  6. Starten Sie Visual Studio neu.

  7. Unter dem Menü von Schritt # 1 finden Sie Ihren neuen Testläufer.
  8. Klicken Sie darauf und speichern Sie

Ab jetzt werden Ihre Tests mit dem von Ihnen konfigurierten Test-Runner ausgeführt.

    
lysergic-acid 09.07.2011, 21:37
quelle