2015-05-31 13 views
14

Ich bin wirklich frustriert mit diesem Problem. Ich habe bereits versucht, die Versionsnummern zu ändern, aber im Test Explorer werden keine Tests angezeigt.xUnit.net v2 entdeckt .NET-Kerntests in Visual Studio 2015 nicht

Im Ausgabefenster Test kann ich diese Ausgabe wird

Starting Microsoft.Framework.TestHost [C:\Users\sul\.dnx\runtimes\dnx-clr-win-x86.1.0.0-beta4\bin\dnx.exe --appbase "path to test project" Microsoft.Framework.ApplicationHost --port 63938 Microsoft.Framework.TestHost --port 63954 list ] 
Unable to start Microsoft.Framework.TestHost 
========== Discover test finished: 0 found (0:00:36.5471185) ========== 

sehen diese so zerbrechlich, werden dann manchmal Tests gezeigt, dass sie für immer verschwinden. Neustart von VS hat nicht geholfen, Neuinstallation der Xunit/Xunit-Runner hat auch nicht geholfen.

In einem anderen Test-Projekt bekam ich einen anderen Ausgang, aber immer noch keine Tests

Starting Microsoft.Framework.TestHost [C:\Users\sul\.dnx\runtimes\dnx-clr-win-x86.1.0.0-beta4\bin\dnx.exe --appbase "path to project" Microsoft.Framework.ApplicationHost --port 63938 Microsoft.Framework.TestHost --port 64421 list ] 
Connected to Microsoft.Framework.TestHost 
Discovering tests in 'path to project\project.json' 
========== Discover test finished: 0 found (0:00:35.9341416) ========== 

Dieser Teil meiner project.json ist

"commands": { 
    "test": "xunit.runner.dnx" 
    }, 
    "dependencies": { 
    "Microsoft.AspNet.Http": "1.0.0-*",  
    "Microsoft.AspNet.Http.Core": "1.0.0-*", 
    "Microsoft.AspNet.TestHost": "1.0.0-*",  
    "Moq": "4.2.1502.911",  
    "xunit": "2.0.0", 
    "xunit.runners": "2.0.0" 
+0

Ich weiß, dass Sie dies markiert haben als beantwortet, aber verwenden Sie ReSharper? Ich habe dieses Problem behoben, indem ich die xUnit-Test-Runner-Erweiterung für ReSharper installiert und Visual Studio neu gestartet habe. – dball

+0

danke für Ihren Kommentar. Nein, ich verwende nicht Resharper –

Antwort

1

schaffe ich es dies, indem sie zeigen an die Arbeit Stellen Sie sicher, dass alle Pakete in allen Lösungsprojekten dieselbe Version referenzieren.

Dies ist mir passiert, weil ich die neuesten Versionen referenziert habe, wie Sie von project.json sehen können.

Eine andere Sache, die ich tat, ist nie einzelne Pakete zu referenzieren, die nur dem Zweck entsprechen. Zum Beispiel in meinem Geschäftsprojekt erstelle ich eine Middleware und ich referenzierte Microsoft.AspNet.Http, weil ich das volle MVC-Paket nicht benötige. Dies verursachte Probleme im Testprojekt, so dass ich Microsoft.AspNet.MVC jedem Projekt hinzufügte, das irgendeine Art von HTTP-Interaktion benötigt, d. H. Httpcontext.

Dies ist vielleicht nicht die ideale Lösung, aber es hat für mich funktioniert. Ich hoffe, das hilft jemandem, der das gleiche Problem hat.

1

Ich hatte ein paar Probleme, aber es hat funktioniert!

"dependencies": { 
    "Test.ANNe.Compiler": "1.0.0-*", 
    "xunit.runner.dnx": "2.1.0-beta2-build79" 
}, 

"commands": { 
    "Test.Console": "Test.Console", 
    "test": "xunit.runner.dnx" 
}, 

3 Probleme, die ich hatte. 1. Sie können nur 1 Läufer haben! 2. Test in Befehl 3. die Kompilierung Umgebung Sicherstellen, dass die Umgebungskonfiguration in dnvm

Ich stelle fest, Ihr mit dnx-clr-win-x86.1.0.0 abgestimmt, die dnx ist aber nicht die dnx Läufer.

5

Ich hatte gerade einige Probleme mit diesem TFS. Richten Sie es ein und es funktionierte auf einer Maschine, ging auf eine andere, bekam neuesten Code nach dem Einchecken meiner Änderungen, alles zeigte korrekt, aber der Testläufer fand überhaupt keine Tests. Am Ende wurde eine einfache Säuberung und Neuerstellung am Test-Projekt durchgeführt und es finden nun Tests statt.

Das ist mein project.json

"dependencies": { "Xunit": "2.1.0-beta2-*", "Xunit.runner.dnx": "2.1.0-beta2-*" }, "commands": { "test": "xunit.runner.dnx" },

Notiere die Hauptstadt X in der xUnit in Abhängigkeiten aufgeführt. Die offizielle Dokumentationsliste ist ein Kleinbuchstabe x, aber das funktioniert nicht. Ich habe dem Besitzer des Repos eine E-Mail geschickt, um ihn darauf aufmerksam zu machen.

EDIT: Ich habe mit dem Autor von XUnit gesprochen, der mir versichert, dass der Kleinbuchstabe x für ihn und andere arbeitet und dass es möglicherweise ein beschädigter Paketcache ist.

+0

Und wenn Sie einen beschädigten Paket-Cache haben, wie reparieren Sie es? Mir wurde auch gesagt, dass es etwas Korruption in Visual Studio gibt, das durch Aufräumen Ihres% TEMP% Ordners gelöscht werden kann. –

+0

Ich habe die "Befehle" vermisst, die Sie erwähnten – dumbledad

1

Die folgenden Abhängigkeiten (im Projekt bereitzustellen.json) arbeitete für mich (original source):

"dependencies": { 
    "System.Collections": "4.0.10-beta-23019", 
    "System.Linq": "4.0.0-beta-23019", 
    "System.Threading": "4.0.10-beta-23019", 
    "System.Runtime": "4.0.10-beta-23019", 
    "Microsoft.CSharp": "4.0.0-beta-23019", 

    "xunit": "2.1.0-*", 
    "xunit.runner.dnx": "2.1.0-*", 
    "xunit.runner.visualstudio": "2.0.1", 
    "Microsoft.Framework.TestHost": "1.0.0-*", 
    "Microsoft.Framework.ApplicationHost": "1.0.0-*" 
} 
+0

funktionierte für mich nur aktualisierte Version für xunit zu "2.2.0- * " – zabulus

1

Encountered ähnliche Probleme und das Ändern von xunit 2.0.0-rc1 zu 2.0.0-beta8 das Problem behoben.

Details:

  • Ein Projekt (ältere Version von Microsoft.AspNet.Authentication.Test) arbeitete
  • Projekt B (mein eigenes Projekt)

Einstellung Projekt B nicht funktionierten zu Verwendung:

"xunit.runner.aspnet": "2.0.0-aspnet-beta8*" 

Statt:

"xunit.runner.aspnet": "2.0.0-aspnet-*" 

Das Problem wurde behoben. Projekt B wurde verwarnt:

xunit.runner.aspnet (2.0.0-aspnet-rc1-15669) 

Projekt A verwendet, um die folgenden project.json:

{ 
    "compilationOptions": { 
     "warningsAsErrors": "true" 
    }, 
    "dependencies": { 
     "Microsoft.AspNet.Authentication.Cookies": "1.0.0-*", 
     "Microsoft.AspNet.Authentication.Facebook": "1.0.0-*", 
     "Microsoft.AspNet.Authentication.Google": "1.0.0-*", 
     "Microsoft.AspNet.Authentication.MicrosoftAccount": "1.0.0-*", 
     "Microsoft.AspNet.Authentication.OAuthBearer": "1.0.0-*", 
     "Microsoft.AspNet.Authentication.OpenIdConnect": "1.0.0-*", 
     "Microsoft.AspNet.Authentication.Twitter": "1.0.0-*", 
     "Microsoft.AspNet.DataProtection": "1.0.0-*", 
     "Microsoft.AspNet.TestHost": "1.0.0-*", 
     "Moq": "4.2.1312.1622", 
     "xunit.runner.aspnet": "2.0.0-aspnet-*" 
    }, 
    "commands": { 
     "test": "xunit.runner.aspnet" 
    }, 
    "frameworks": { 
     "dnx451": { 
      "dependencies": { 
       "Shouldly": "1.1.1.1" 
      } 
     } 
    } 
} 

Projekt B verwendet:

{ 
    "dependencies": { 
     "Microsoft.AspNet.Authentication": "1.0.0-*", 
     "Microsoft.AspNet.Authentication.OAuth": "1.0.0-*", 
     "Microsoft.AspNet.Authentication.Cookies": "1.0.0-*", 
     "Microsoft.Framework.DependencyInjection": "1.0.0-*", 
     "Microsoft.AspNet.TestHost": "1.0.0-*", 
     "Moq": "4.2.1312.1622", 
     "xunit.runner.aspnet": "2.0.0-aspnet-*" 
    }, 
    "commands": { 
     "test": "xunit.runner.aspnet" 
    }, 
    "frameworks": { 
     "dnx451": { 
      "dependencies": { 
       "Shouldly": "1.1.1.1" 
      } 
     } 
    } 
}