web-dev-qa-db-fra.com

Exécution de tests unitaires avec .NET Core MSTest: "Le TestContainer suivant est introuvable ..."

J'ai cherché haut et bas et je ne trouve pas de réponse à cette exception. Cette question est la principale à apparaître lorsque je recherche, mais elle ne résout pas ce problème.

[7/8/2018 6:22:22 PM Informational] Executing test method 'CoreScraper.FlyerScraper.GetAllCurrentFlyers'
[7/8/2018 6:22:22 PM Error] System.InvalidOperationException: The following TestContainer was not found 'C:\Users\Username\Documents\Visual Studio 2017\Projects\ProductApp\CoreScraper\bin\Debug\netcoreapp2.0\CoreScraper.dll'
   at Microsoft.VisualStudio.TestWindow.Controller.TestContainerProvider.<GetTestContainerAsync>d__61.MoveNext()

"CoreScraper" est le nom du projet. Quand je regarde dans ce ...\netcoreapp2.0\ dossier, le CoreScraper.dll est définitivement là. Je lance le test en cliquant avec le bouton droit sur la méthode de test et en sélectionnant "Exécuter les tests". Le test s'est bien passé la première fois que je l'ai exécuté, mais il m'a donné cette erreur depuis. J'ai fermé Visual Studio et rouvert, supprimé le contenu de bin\, nettoyé et reconstruit le projet, etc.

12
Josh Withee

Le problème était que le package NuGet Microsoft.NET.Test.Sdk n'était pas installé. L'installation de ce package dans le projet via NuGet Package Manager a résolu le problème.

Ce n'était pas intuitif pour moi car j'ai un autre projet de test unitaire qui fonctionne bien sans le Microsoft.NET.Test.Sdk package, mais ce projet est .NET Framework 4.6.2.

19
Josh Withee

Aujourd'hui, j'ai rencontré un problème similaire avec Visual Studio 2017 pour les tests xUnit. Mes observations:

  1. Un problème se pose pour moi lors du basculement entre le mode Release/Debug.
  2. Solution: redémarrez Visual Studio et cela a résolu le problème.

Note Après quelques recherches sur Google/Bing, j'ai découvert que tout le monde avait trouvé la solution en installant des packages. Cependant, dans mon cas, tout fonctionnait avant et a donc décidé de ne rien installer de plus.

J'espère que cela aide.

9
Sandy

Comme l'a dit @ Marathon55, l'installation de Microsoft.NET.Test.Sdk a résolu le problème mais dans mon cas, je dois installer 2 autres packages MSTest.TestFramework & MSTest.TestAdapter. pourrait aider quelqu'un

3
Ali Umair