web-dev-qa-db-de.com

VS2017 und NUnit 3.9 Es ist kein Test verfügbar

Ich verwende die neueste Version VS.6017 15.6.4, NUnit3TestAdapter 3.10.0 und Nunit Version 3.9.0.0. 

Wenn ich versuche, einen Komponententest im Test Explorer auszuführen, ist der Test ausgegraut, wenn ich mit der rechten Maustaste klicke und ausgewählte Tests ausführte, wird der folgende Fehler angezeigt: Kein Test verfügbar

    [TestFixture]
    public partial class ListViewBOTest
    {
    [Test]
     public void TestSearch_DateTime()
      {
        Assert.AreEqual(1,0);
      }

    }

 Here is a screenshot of my tests

Text aus Ausgabe:

[3/26/2018 10:53:55 AM Informational] ------ Run test started ------
[3/26/2018 10:53:55 AM Informational] NUnit Adapter 3.10.0.21: Test execution started
[3/26/2018 10:53:55 AM Informational] Running all tests in C:\Projects\MVPPlant\DEV\CMMSdg.Plant\CMMSdg.Plant\Sln.2010\CMMSdg.Plant.BusinessObjects.Test\bin\Debug\CMMSdg.Plant.BusinessObjects.Test.dll
[3/26/2018 10:53:56 AM Informational] NUnit failed to load C:\Projects\MVPPlant\DEV\CMMSdg.Plant\CMMSdg.Plant\Sln.2010\CMMSdg.Plant.BusinessObjects.Test\bin\Debug\CMMSdg.Plant.BusinessObjects.Test.dll
[3/26/2018 10:53:56 AM Informational] NUnit Adapter 3.10.0.21: Test execution complete
[3/26/2018 10:53:56 AM Warning] No test is available in C:\Projects\MVPPlant\DEV\CMMSdg.Plant\CMMSdg.Plant\Sln.2010\CMMSdg.Plant.BusinessObjects.Test\bin\Debug\CMMSdg.Plant.BusinessObjects.Test.dll. Make sure that test discoverer & executors are registered and platform & framework version settings are appropriate and try again.
[3/26/2018 10:53:56 AM Informational] ========== Run test finished: 0 run (0:00:01.0435303) ==========
13
Amete Blessed

Ich hatte das gleiche Problem wie Amete Blessed und das Auskommentieren anderer Testmethoden ließ den Test Explorer funktionieren und führte meinen Test aus

1
Cubelaster

Stellen Sie sicher, dass Sie den NUnit3 Test Adapter von hier installiert haben

https://marketplace.visualstudio.com/items?itemName=NUnitDevelopers.NUnit3TestAdapter

19
Peter Morris

Können Sie die folgenden Schritte überprüfen und prüfen, ob es funktioniert?

  1. Gehen Sie im Visual Studio-Menü zu Test > Test Settings > Default Processor Architecture und notieren Sie sich, wenn X86 ausgewählt ist oder X64
  2. Gehen Sie jetzt zum Abschnitt Build im Fenster Properties des Projekts, in dem die Tests geschrieben werden. Stellen Sie sicher, dass das Dropdown-Menü Platform target entweder Any CPU ausgewählt ist oder zumindest der Architektur des obigen step 1 entspricht.

Wenn Sie nun die Lösung erstellen und versuchen, diese Tests auszuführen, sollten Sie feststellen, dass sie jetzt ausgeführt werden.

11
hem

Ich habe festgestellt, dass meine Build-Events falsch waren. Ungültiger Kopierbefehl hat alle meine Tests und einen halben Tag durchgebrannt:

Copy C:\repo\Architecture\*.json $(ProjectPath)/Y
Copy C:\repo\Architecture\*.json $(TargetPath) /Y

anstatt 

Copy C:\repo\Architecture\*.json $(ProjectDir)/Y
Copy C:\repo\Architecture\*.json $(TargetDir) /Y
1
Erik McCarty

Nach der Installation von NUnit durch Nuget-Tests sind in Test Explorer __ erschienen. Als ich sie jedoch ausführte, bekam ich "Kein Test ist verfügbar". Das Installieren des NUnit Test Adapters hat das Problem behoben.

Die Meldungen im Fenster "Test Output" ("NUnit konnte [Assembly] nicht laden", "Kein Test ist verfügbar ..." usw.) können das zugrunde liegende Problem verdecken, durch das der Läufer die Test-Assembly nicht lädt. Dies beinhaltet das Ausblenden von Fehlern beim Laden von Abhängigkeiten der Testbaugruppe oder des Testobjekts.

Wenn im Test-Explorer-Fenster eine Test-Assembly angezeigt wird, die Tests jedoch nicht ausgeführt werden können, sollten Sie die Fusionsprotokollierung vorübergehend aktivieren, um festzustellen, ob Assembly-Bindungsfehler auftreten, wenn Sie die Tests ausführen.

1
Phil

Sie waren möglicherweise ein Opfer von diesem Problem das (theoretisch) in 15.6.3 gelöst wurde. Laut dieser Antwort versuchen Sie, Ihren %temp%\VisualStudioTestExplorerExtensions-Ordner zu löschen. Dies hat das Problem für einige andere Benutzer behoben.

0
Nick DeVore

Können Sie anstelle des Test Explorers mit der rechten Maustaste auf die Lösung klicken und von dort aus Unit-Tests ausführen?

0
Nick Booth

Was für mich funktionierte, war das Löschen des ComponentModelCache-Ordners unter %localappdata%\Microsoft\VisualStudio\<version>

0
Joakim M. H.

Hatte das gleiche Problem. In meinem Fall habe ich festgestellt, dass der NUnit-Testadapter nicht von Test Explorer verwendet wird, wenn Ihr Testprojekt einen Verweis auf MSTest enthält. In der Regel Microsoft.VisualStudio.TestPlatform.TestFramework.dll, überprüfen Sie aber auch Ihre .csproj-Datei auf "MSTest" und Ihre packages.config-Datei.

Ich habe dies entdeckt, indem ich zunächst die Diagnoseprotokollierung für Visual Studio-Tests aktiviert habe. Diese finden Sie unter "Extras" -> "Optionen" -> "Tests" -> "Protokolliergrad".

In meinem Protokoll habe ich diesen Eintrag gefunden:

[22/11/2018 10:36:42 Diagnose] Projekt C:\Git\myProject\src\myProject.Tests\myProject.Tests.csproj verweist auf den Testadapter: MSTest.TestAdapter, Version 1.1.18

0
Rob Powell

Ich hatte ein ähnliches Problem bei der Verwendung von Xamarin.Forms. Die Lösung bestand darin, NUnit.XForms von NuGet zu installieren und hinzuzufügen

<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.3.0" />

csproj-Datei des Projekts, in dem sich die Tests befinden.

0
AGR

Dies ist auf ein Speicherproblem zurückzuführen.

  • Objekt nach Testdurchführung reinigen

Beispielcode

private TestController testController;

[OneTimeSetUp]

public void TestSetup()

{

testController= new TestController();

}



[OneTimeTearDown]

public void TestCleanup()

{

testController= null;

}
  • Ändern Sie die Testausführung in den Einstellungen auf 64 Bit

Test -> Testeinstellungen -> Standardprozessorarchitektur -> x64.

0
MrTesla