Frage

ich NUnit habe, bevor sie verwendet, aber nicht in einer Weile, und nie auf dieser Maschine. Ich entpackte Version 2.4.8 unter Program Files, und ich halte diesen Fehler, wenn ich versuche meine Tests zu laden.

  

konnte nicht geladen werden Datei oder Assembly 'NUnit.Framework, Version = 2.4.8.0, Culture = neutral, PublicKeyToken = 96d09a1eb7f44a77' oder eine ihrer Abhängigkeiten. Das System kann die Datei nicht finden angegeben **

Um das Problem zu vereinfachen, habe ich die einfachste mögliche Testdatei erstellt.

using NUnit.Framework;

namespace test
{
    [TestFixture]
    public class Tester
    {
        [Test]
        public void ATest()
        {
            Assert.IsTrue( false, "At least the test ran!" );
        }
    }
}

Ich habe hinzugefügt "C: \ Programme \ NUnit-2.4.8-net-2.0 \ ist" zu meinem PATH (und neu gestartet). Beachten Sie, dass, wenn ich die Testanordnung in diesen Ordner kopieren, dann

C:\Program Files\NUnit-2.4.8-net-2.0\bin>nunit-console test.dll

funktioniert, aber

C:\Program Files\NUnit-2.4.8-net-2.0\bin>nunit-console c:\dev\nunit_test\test.dll

und

C:\dev\nunit_test>nunit_console test.dll

nicht mit dem obigen Fehler.

Vermutlich könnte ich dieses Problem umgehen, durch Kopieren der NUnit.Framework dll in mein Projekt Ordner ist, aber ich erinnere mich nicht in der Vergangenheit zu tun. Außerdem habe ich den gleichen Fehler in der GUI. Sollte nicht die GUI weiß, wo der Rahmen befindet (das heißt, im selben Ordner)?

@ Scott, ich bin nicht mit Visual Studio. Ich verwende die folgende Zeile das Testprojekt zu kompilieren.

%windir%\Microsoft.NET\Framework\v2.0.50727\csc.exe /r:"C:\Program Files\NUnit-2.4.8-net-2.0\bin\nunit.framework.dll" /t:library /out:test.dll test.cs

@devio habe ich versucht, sowohl die msi und den Reißverschluss mit dem gleichen Ergebnis.

War es hilfreich?

Lösung

Wenn Sie mit NUnit-2.4.8-net-2.0.msi installieren, werden die NUnit Assemblys im GAC hinzugefügt.

Sie können auch manuell neu installieren, indem gacutil aus der VS2005 Eingabeaufforderung Tagrunnig.

Andere Tipps

Stellen Sie sicher, dass Sie eine Referenz hinzugefügt haben NUnit.Framework. Wenn Sie haben, dann stellen Sie sicher, dass die Eigenschaften dieser Referenz haben die Kopie lokale Eigenschaft auf true gesetzt.

Ich hatte das gleiche Problem, und ich hatte NUnit-2.4.8-net-2.0.msi installiert ist. Aufbauend auf dem „fügen Sie den GAC“ Kommentar oben, hier ist was ich getan habe:

  • Öffnen Sie „Visual sudio Eingabeaufforderung (in der Regel: Stellen Sie sicher gacutil in Ihrem Pfad ist) und: cd "C: \ Programme \ NUnit 2.4.8 \ bin"

  • Unregister Ihre nunit Einträge aus dem GAC. Sie können dies tun, indem Sie die nunit Einträge im GAC registriert zu finden:

gacutil / l | find / i "nunit"> temp.bat && Notizblock temp.bat

  • Prepend die nunit.core und NUnit.Framework Zeilen mit "gacutil / uf", das heißt:.

gacutil / uf nunit.core, Version = 2.4.2.0, Culture = neutral, PublicKeyToken = 96d09a1eb7f44a77

gacutil / uf NUnit.Framework, Version = 2.4.2.0, Culture = neutral, PublicKeyToken = 96d09a1eb7f44a77

  • Führen Sie Ihre Bat-Datei, sie zu entfernen: temp.bat

  • Registrieren Sie die nunit DLLs benötigen Sie:

gacutil / i nunit.core.dll

gacutil / i nunit.framework.dll

Hinweis

, dass die aktuelle NUnit-Installation (2.5.10) nicht registriert sich automatisch auf dem GAC. Wenn Sie GAC verwenden müssen, registrieren sie über gacutil / i wo nunitframeworkpath ist in der Regel% Programfiles% \ NUnit \ net-2.0 \ Framework \ nunit-Rahmen

Ich habe diese Fehlermeldung wenn ich heute eine neue Testanordnung zu einem bestehenden NUnit Testprojekt hinzufügen versucht. Es scheint, dass meine Testprojekte mehrere Pfade Verweise auf identischen nunit.framework.dll Baugruppen hatten.

Wenn Sie mehr als eine Testanordnung in Ihrem NUnit Projekt haben, Sie mögen die Path-Eigenschaft der NUnit.Framework Referenz in Ihren Testprojekten überprüfen. Sobald ich sie übereinstimmen gemacht, wird die Meldung Fehler ging weg.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top