it-swarm.com.de

Nunit - entdeckt keine Tests [keine Fehlermeldung]

Die Einheit weigert sich, meine Tests in einer Baugruppe zu entdecken oder durchzuführen. Dies ist nicht der Fall, wenn das Gerät eine Fehlermeldung wie "Test in Assembly nicht gefunden" ausgibt. Es entdeckt einfach nicht, dass ich Tests habe.

Ich klicke mit der rechten Maustaste auf die Testmethode und die Testausgabe zeigt: 

Entdecken Sie den Test wurde gestartet ------Entdeckungstest beendet: 0 gefunden (0: 00: 00,0260026)

Ich habe alles ausprobiert, was in diesem Post erwähnt wird: NUnit findet keine Tests in Assembly

Ein Upgrade ist nicht möglich. Die Einstellungen der Prozessorarchitektur sind korrekt. Meine Tests sind öffentlich und haben alle korrekten Tags. 

Hier ist ein Code aus meinem Projekt, den ich einfach nicht ausführen kann. Ich weiß das, weil ich gleich zu Beginn einen Haltepunkt habe. 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NUnit.Framework;

namespace UnitTestProjects
{
    [TestFixture]
    public class SomeRandomTests
    {
        [Test]
        public void ShouldFail()
        {
            Assert.AreEqual(1, 0);
        }

        [Test]
        public void ShouldPass()
        {
            Assert.AreEqual(1,1);
        }
    }
}

Ich lasse den internen Visual Studio Test Explorer laufen. Unit Framework Version 2.5.9.10348, Laufzeitversion v2.0.50727. Ich habe Unit Test Adopter installiert. Ich habe versucht, es ohne Erfolg erneut zu installieren. 

25
user1531921

Sie müssen entweder die Erweiterung NUnit VSAdapter vsix installieren oder den Adapter als Nuget-Paket Ihrer Lösung hinzufügen.

Die neueste Version ist 2.0 und das Vsix ist hier verfügbar: https://visualstudiogallery.msdn.Microsoft.com/6ab922d0-21c0-4f06-ab5f-4ecd1fe7175d

Das Nuget-Paket finden Sie hier: http://www.nuget.org/packages/NUnitTestAdapter/

Weitere Informationen zu diesen Optionen finden Sie in diesem MSDN ALM-Beitrag http://blogs.msdn.com/b/visualstudioalm/archive/2013/06/11/part-3-unit-testing-with-traits-und -code-coverage-in-visual-studio-2012-using-the-tfs-build-and-the-new-nuget-adapter-approach.aspx , das auch auf zwei frühere Beiträge verweist.

Wenn Sie im Fenster Output Console unter Test nachsehen, werden der Name und die Version des Adapters während der Ausführung angezeigt. Wenn dies nicht der Fall ist, ist der Adapter nicht aktiv. 

Wenn Sie Resharper ausführen, stellen Sie sicher, dass Sie über die neueste Version 8.2 verfügen. Zuvor waren Konflikte mit den Testadaptern und dem Resharper aufgetreten. 

Auch wenn Sie dieses Projekt nicht von NUnit 2.5.9 auf den neuesten Stand 2.6.4 aktualisieren können, können Sie mithilfe von 2.6.4 überprüfen, ob die Adapter in einem Testprojekt ordnungsgemäß funktionieren.
Ich habe gerade auf meinem eigenen Rechner mit NUnit 2.5.9 nachgesehen, und das hat mit dem 2.0-Adapter gut funktioniert. 

Update:

Für VS2017 installieren Sie nicht die Erweiterung NUnit VSAdapter vsix. Installieren Sie stattdessen NUnit 3 TestAdapter für Visual Studio 2012 (Update 1). Dies funktioniert mit dem NuGet-Paket: NUnit 3.9.0.

29

Meins ist genauso wie das gleiche, aber der Unterschied war, dass ich mein Projekt als VS UnitTest-Projekt und keine einfache DLL erstellt habe. Also habe ich eine DLL erstellt und alle nunit-Assemblys referenziert, und der Test wird jetzt erkannt.

Hoffe das hilft.

2
jayson.centeno

In meinem Fall habe ich das TestCaseSource-Attribut verwendet. Und falscher Quellenname übergeben. 

 [Test]
 [TestCaseSource("TestDataCaseSource")]
 public void SomeTest1(string DataName, ITestData testData)

Nach der Behebung werden alle Tests im Test Explorer angezeigt

1
aleha

Ich hatte auch das gleiche Problem. Meine Tests wurden nicht entdeckt. Nach der Installation der NUnit3TestAdapter-DLL vom Nuget-Paket-Manager wurde mein Problem behoben. Meine Visual Studio-Version ist vs2017.

1

Beim Upgrade von Visual Studio 2013 auf VS 2017 hatte ich dasselbe Problem .. In meinem Fall wurden alle Tests für NUnit 2 (nicht für 3) geschrieben und funktionierten in VS 2013 einwandfrei. Sobald VS2017 installiert war, wurde keiner der Tests installiert gefunden werden könnte.

Das Problem ist, dass VS2017 die NUnit 2-Installation auf meiner VM nicht automatisch aufnahm.

Die Lösung bestand darin, den Nunit 2-Testläufer zu installieren, indem Sie im Menü Extras auf .__ Erweiterungen und Updates. Wählen Sie dann in der rechten Liste Online aus, und geben Sie "NUnit" in das Suchfeld ein. Sie können dann den entsprechenden NUnit-Testläufer hinzufügen.

Dies gilt wahrscheinlich für alle Testläufer außer vielleicht für MSTest.

1
Herb F

Hier gibt es ein paar Dinge zu überprüfen. 1) Stellen Sie sicher, dass wir die richtigen DLLs auf das Testprojekt verweisen. In unserem Fall ist dies NUnit3testAdapter 2) Wir müssen das Visual Studio neu starten, damit die neuen Installationserweiterungen wirksam werden.

Auch nachdem Sie dies alles versucht haben und es immer noch nicht funktioniert. Installieren Sie es als Teil von Tool Extensions and Update und installieren Sie von hier aus den NunitTest-Adapter. das sollte auf jeden fall funktionieren.

0
Vivek

Für meinen Fall VS 2017 füge ich nach der Installation von Unit Test Adapter 3 einfach eine aktualisierte Version der DLL zu meiner Lösung hinzu, die Nuget Package Manager verwendet. 

0

Möglicherweise liegt ein Problem mit NUnit30Settings.xml vor. Ich hatte dieses Problem. In meinem Fall war die Akte leer. Ich weiß nicht was der Grund war. Ich habe die Einstellungen von NUnitSettings.xml in NUnit30Settings.xml kopiert. Das hat mein Problem gelöst. Dateien mit Einstellungen befinden sich in ... Benutzer\[Benutzer]\AppData\Local\NUnit.

0
Main