Ich habe den NUnit-Testadapter für VS2012 + 2013 installiert. Als ich ihn zum ersten Mal installierte, wurden die Adaptertests angezeigt, aber sie wurden heute aus irgendeinem Grund nicht mehr angezeigt. Nach dem Erstellen, Wiederherstellen, Reinigen und Neustarten wird im Test Explorer nichts angezeigt. Warum sollte das passieren? Ich verwende VS2013 Ultimate.
145
Antworten:
Wenn Ihr Testprojekt auf eine 64-Bit-Plattform ausgerichtet ist, werden die Tests nicht im NUnit-Testadapter angezeigt.
quelle
Wenn Sie eine NUnit3 + -Version verwenden , ist ein neuer Testadapter verfügbar.
Gehen Sie zu "Extras -> Erweiterungen und Updates -> Online" und suchen Sie nach "NUnit3 Test Adapter" und installieren Sie dann.
quelle
Meine Testassembly ist 64-Bit. In der Menüleiste oben in Visual Studio 2012 konnte ich "Test" -> "Testeinstellungen" -> "Standardprozessorarchitektur" -> "X64" auswählen. Nach einer 'Rebuild Solution' aus dem 'Build'-Menü konnte ich alle meine Tests im Test Explorer anzeigen. Hoffentlich hilft dies jemand anderem in der Zukunft = D.
quelle
Überprüfen Sie, ob die NUnit-Versionen nicht übereinstimmen. Der derzeit verfügbare NUnit-Testadapter funktioniert nur für NUnit Version 2.6.4 und niedriger. Um NUnit von Version 3.x herunterzustufen, gehen Sie zu Package Manager Console> Update-Paket NUnit-Version 2.6.4
http://jeremybytes.blogspot.co.ke/2015/11/review-of-unit-testing-makes-me-faster.html
quelle
In meiner Situation wurde der 'NUnit3 Test Adapter' deaktiviert. Um es wieder zu aktivieren, gehen Sie zum Menü
Tools-> Erweiterungen und Updates ...
Wählen Sie auf der linken Seite 'Installiert' -> 'Alle'.
Suchen Sie in der oberen rechten Ecke nach 'nunit'.
Wenn Sie 'NUnit3 Test Adapter' installiert haben, können Sie es mit dem gefundenen Element aktivieren / deaktivieren.
quelle
Diese Antwort scheint ziemlich einfach zu sein, war mir aber zunächst nicht ganz klar. Wenn Sie die Lösung (neu) erstellen, werden nur die Projekte erstellt, die für die Erstellung in konfiguriert sind
Build -> Configuration Manager
Dies war mein Problem. Ich muss versehentlich die Einstellungen für die Build-Konfiguration geändert haben oder etwas, das dazu geführt hat, dass meine Testprojekte nicht erstellt wurden (als sie zuvor waren). Das
Test Explorer
Fenster sah sich also veraltete DLLs an. Mir wurde klar, dass dies der Fall war, nachdem ich a durchgeführt hatteClean
und die meisten meiner Tests verschwunden waren und nach einerrebuild
... weiteren Überprüfung desbin
Ordners nicht mehr zurückkamen , dass diese Projekte überhaupt nicht erstellt wurden.quelle
Ich hatte ein funktionierendes Setup (für NUnit2 und NUnit3 je nach Lösung und mehrere Versionen von Visual Studio zwischen 2012 und 2017) und es funktionierte plötzlich eines Tages nicht mehr: In keiner Lösung oder Version von VS wurden Tests festgestellt.
In meinem Fall hat es geholfen zu löschen
%localappdata%\Temp\VisualStudioTestExplorerExtensions
. Nach einem Neustart von VS funktionierte alles wie zuvor.quelle
Wenn Sie wie hier erwähnt VS 2017 und .net Core verwenden , sollten Sie Verweise auf das Testframework NUnit 3.6.1 , auf den Testläufer NUnit3TestAdapter 3.8.0-alpha1 und auf das Test-SDK Microsoft.NET.Test.Sdk hinzufügen 15.0.0 .
quelle
Durch die Verwendung von NUnitTestAdapter.WithFramework wird sichergestellt, dass zwischen den Versionen von NUnit und NUnit Adapter nur geringe / keine Inkonsistenzen bestehen (dh "es funktioniert einfach").
quelle
Überprüfen Sie, ob Sie [TestFixureSetUp] und [Test] angegeben haben.
in der Testklasse
Stichprobe:
quelle
Ich hatte zu deinstallieren , dann die Neuinstallation xunit.runner.visualstudio nuget Paket. Ich habe dies versucht, nachdem ich alle oben genannten Vorschläge ausprobiert hatte. Vielleicht war es eine Mischung aus Dingen.
quelle
Eine weitere Ursache für dieses Problem ist, dass Sie ein Projekt von einem zugeordneten Laufwerk aus öffnen. Visual Studio behandelt solche Projekte ordnungsgemäß, aber anscheinend unterstützt Nunit sie nicht.
Durch Kopieren des Projekts auf eine physische Seite wurde das Problem behoben.
quelle
Als ich nunit v3.2.1 deinstallierte, stellte ich außerdem fest, dass sich die nunit-Framework-Referenz für v3.2.1 noch in meinem Projekt im Solution Explorer befand. Projektmappen-Explorer> Projektname > Referenzen
Wenn Sie mit der rechten Maustaste klicken, wird die Version angezeigt. Entfernen Sie diese und klicken Sie mit der rechten Maustaste auf Referenzen> Referenz hinzufügen.
Suchen Sie nach der Version 2.x und fügen Sie die Lösung hinzu und erstellen Sie sie neu.
Das hat bei mir funktioniert!
quelle
Ich habe das von op
Mein Fall war, dass mir ein altes Projekt übergeben wurde und die Tests tatsächlich Teil des zu testenden Systems waren. Ich gehe davon aus, dass sie den externen Testläufer verwendet haben.
Diese Task-Kette hat das Problem für mich gelöst
Ich konnte die Nunit-Tests erfolgreich durchführen.
quelle
Wenn Sie das
TestCaseSource
Attribut verwenden, stellen Sie sicher, dass die Quelle vorhanden ist und die Dokumentation beachtet wird. Andernfalls werden Ihre Tests nicht erkannt.quelle
Ich hatte ein ähnliches Problem, bei dem die Tests nicht entdeckt wurden. Ich hatte die richtige Version von NUnit, Versionen, die zwischen NUnit und Adapter übereinstimmten, und die Tests wurden korrekt markiert. Ich habe VS 2017 Enterprise nicht als Administrator ausgeführt. Nach dem Start von VS als Administrator wurden die Tests angezeigt.
quelle
Ich habe eine neue Lösung mit einem Testprojekt gestartet und sie mit meinem ursprünglichen Problemprojekt verglichen. Das Original hatte aus irgendeinem Grund eine app.config . Ich habe diese Datei aus dem Projekt ausgeschlossen und festgestellt, dass meine Tests im Test-Explorer erneut angezeigt werden.
quelle
Ich hatte auch dieses Problem, aber die Ursache war anders. Ich verwende VS2017 mit F # 4.0.
Erstens gibt Ihnen die Konsole in Visual Studio nicht genügend Details, warum die Tests nicht gefunden werden konnten. Es wird nur fehlschlagen, die DLL mit den Tests zu laden. Verwenden Sie daher NUnit3console.exe in der Befehlszeile, da dies Ihnen weitere Details liefert.
In meinem Fall lag es daran, dass der Testadapter nach einer neueren Version der F # Core DLL (4.4.1.0) (F # 4.1) suchte, während ich immer noch 4.4.0.0 (F # 4.0) verwende. Also habe ich dies der app.config des Testprojekts hinzugefügt: -
dh auf den früheren F # -Kern umleiten.
quelle
Ich hatte das gleiche Problem, als plötzlich kein Test mehr im Test Explorer-Fenster erschien. Ich habe die aktualisierte Version von "NUnit3TestAdapter"
und nach vielen Suchen und Bemühungen stellte ich fest, dass ich die folgenden Werte in den Projekteigenschaften festlegen muss: [Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf Projekt> Eigenschaften]. Legen Sie auf der Registerkarte Erstellen die Option Plattform = x64 und Plattformziel = x86 oder fest Jede CPU Erstellen Sie das Projekt und alle Tests werden im Test Explorer-Fenster angezeigt.
Wichtiger Hinweis: Ich bin zu einer Lösung gekommen, nachdem ich die nächste Nachricht im Ausgabefenster gesehen habe:
"Beim Testlauf werden DLLs verwendet, die für Framework Framework45 und Plattform X86 erstellt wurden. Die folgenden DLLs werden nicht Teil des Laufs sein: AutomationTests.dll wurde für Framework Framework45 und Plattform X64 erstellt."
quelle
Ich hatte einige msbuild.exe-Prozesse, die hängen blieben. Ich weiß nicht, ob das mein Problem war oder nicht, aber es hat mich viel Mühe gekostet, verschiedene NUnit-Adapter neu zu installieren, bevor ich die blockierten Prozesse gefunden habe.
quelle
Um meine $ .02 hier hinzuzufügen, bin ich erst gestern auf ein ähnliches Problem gestoßen, bei dem 168 meiner Tests fehlten. Ich habe fast alles in diesem Beitrag ausprobiert - vor allem, um sicherzustellen, dass meine Version (en) von NUnit gleich waren - alles ohne Erfolg. Ich erinnerte mich dann daran, dass ich meine Tests in Wiedergabelisten unterteilt hatte; und diese werden nicht automatisch aktualisiert, wenn Sie neue Tests hinzufügen . Als ich die Wiedergabelisten löschte, war BAM! Alle meine Tests waren wieder da.
quelle
Stellen Sie sicher, dass Ihre Tests ordnungsgemäß mit dem Testattribut gekennzeichnet sind. Wenn alle Tests nur mit dem Explicit-Attribut gekennzeichnet sind, erkennt der TestAdapter das Gerät nicht.
quelle