Ich habe mit VS 2017 zu kämpfen, seit ich es installiert habe. Jetzt scheint es Unit Tests wird nur von der Befehlszeile "dotnet test." laufen;
Mein Projekt ist .NET Core 1.1.1. Ich habe das SDK und das Framework-Update für 1.1.1 installiert.
Ich habe das Beispiel auf MSDN (https://msdn.microsoft.com/en-us/library/ms182532.aspx) ausprobiert, das ebenfalls auf genau dieselbe Weise fehlschlägt.
Alle NuGet-Pakete für die Tests und das Hauptprojekt sind aktuell. Und sowohl das Testprojekt als auch das Hauptprojekt werden ohne Fehler gebaut. Und die Tests laufen erfolgreich über die Kommandozeile.
Hat jemand Unit Tests in VS 2017 zum Laufen gebracht, wenn ja, wie?
Danke! John
Hier ist ein Beispiel für ein einfaches Testprojekt, das nicht auf GitHub funktioniert. Dies ist ein Beispiel mit xUnit, aber ich habe versucht, NUnit und Visual Studio gebaut in MS-Tests. Egal welche Tests oder welche Änderungen ich mache, ich kann den VS Test Runner nicht dazu bringen, irgendwelche Tests zu finden.
DEL %TEMP%\VisualStudioTestExplorerExtensions
Microsoft.DotNet.InternalAbstractions
(siehe SO Post)test -> test settings -> default processor architecture
ist auf x86 gesetztDie Frage Kann mir bitte jemand ein funktionierendes Beispiel einer .Net Core 1.1.0 Lösung in VS2017 (.csproj Projektdateien) zur Verfügung stellen, bei dem der VS Testexplorer die Unit-Tests erfolgreich findet ODER mir das Problem im angegebenen Beispiel zeigen.
Lesen Sie keine veralteten Artikel unter MSDN. .NET Core relevante Materialien finden Sie unter docs.microsoft.com
https://docs.microsoft.com/en-us/dotnet/articles/core/testing/
Im Allgemeinen benötigen Sie eine .NET Core-Konsolenanwendung, die die Unit-Testfälle enthält.
In meinem Fall war es das UWP-Projekt in der Lösung, das das Problem verursachte.
Als ich das UWP-Projekt entlud, wurden die Tests entdeckt. Als ich es wieder lud, verschwanden die Tests wieder.
Versuchen Sie, alle Projekte zu entladen und nur das Testprojekt zu behalten. Nach zehnmaligem Neuaufbau der Lösung sollte der Test in Test Runner erscheinen. Laden Sie ein Projekt nach dem anderen und bauen Sie die Lösung jedes Mal neu auf, um herauszufinden, welches Projekt das Problem verursacht.
Das Problem ist, dass Visual Studio mit den Dotnet Core Versionen auf dem Rechner durcheinander kommt. Als ich auf Systemsteuerung -> Programme deinstallieren ging, hatte ich 8 verschiedene dotnet core SDK' s und Runtimes installiert. Dies führte irgendwie dazu, dass VS beim Versuch, Tests zu finden, eine Fehlermeldung ausgab.
Sie können das Problem überprüfen, indem Sie die Befehlszeile aufrufen und die Version von dotnet unter $ dotnet --version
abrufen. Wenn Sie irgendetwas anderes als die neueste Version sehen, die Sie installiert haben, dann hat Ihr Rechner eine Fehlanpassung und verwendet nicht die richtige Version. Beispiel...Wenn Sie dotnet core 1.0.1
installiert haben, aber wenn Sie die Version an der Kommandozeile abrufen und es heißt 1.0.0
, dann ist das ein Problem.
Löschen Sie das ganze alte Zeug. Ich begann nur mit dem, was ich glaubte, entfernen zu müssen (die ältesten dotnet rc-Versionen), aber beim Testen des Problems wurde immer noch die falsche Version angezeigt. Schließlich habe ich mich dazu durchgerungen, eine vollständige Säuberung durchzuführen. I...
Nachdem mein Rechner komplett leer war, installierte ich nur VS2017 (es wird mit dem neuesten Dotnet ausgeliefert). Ich habe ein xUnit-Testprojekt erstellt und der Testexplorer hat den Test sofort gefunden LOSGELÖST
Das mag übertrieben erscheinen, aber ich habe zwei Wochen lang versucht, das Problem auf andere Weise zu lösen. Wenn Sie das Problem haben, tun Sie es einfach, auch wenn es Stunden dauern kann, um Elemente zu deinstallieren/neu zu installieren, wird es Ihnen wahrscheinlich Zeit sparen.