EDYCJA 2016-10-19:
Pierwotne pytanie dotyczyło problemu specyficznego dla VS2015 CTP6 z programem do uruchamiania testów XUnit. Z odpowiedzi jasno wynika, że istnieje znacznie szerszy problem z odnajdywaniem testów jednostkowych w programie Visual Studio, który może wystąpić w wielu różnych sytuacjach. Uporządkowałem moje pytanie, aby to odzwierciedlić.
Włączyłem również skrypt do mojej własnej odpowiedzi, którego używam do dziś do rozwiązywania podobnych problemów, gdy się pojawiają.
Wiele innych odpowiedzi również okazało się pomocnych w lepszym zrozumieniu zawiłości biegacza testów VS. Doceniam, że ludzie wciąż dzielą się swoimi rozwiązaniami!
Oryginalne pytanie 10.04.2015:
Od wczoraj mój Eksplorator testów Visual Studio nie wykryje testów dla żadnego z moich projektów. Nie pokazuje również zielonego paska ładowania po zakończeniu budowy.
Kiedy przechodzę do Eksploratora testów programu Visual Studio i klikam „Uruchom wszystko” lub gdy klikam prawym przyciskiem myszy dowolną metodę testową i wybieram opcję „Uruchom testy”, w oknie danych wyjściowych pojawia się następujący komunikat:
Could not load file or assembly 'Microsoft.VisualStudio.Web.ProjectSystem, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
Używam Visual Studio 2015 CTP 6 na Windows 10 Pro Technical Preview, build 10041. wersja .NET Framework nie wydają się znaczenia - to dzieje się 4.0
, 4.5.2
i 4.6
.
Wypróbowałem z następującymi frameworkami testowymi i wszystkie dają to samo zachowanie:
Microsoft.VisualStudio.QualityTools.UnitTestFramework v14.0.22609.0
xunit v2.1.0-beta1-build2945
zxunit.runner.visualstudio v2.1.0-beta1-build1051
NUnit v2.6.4
zNUnitTestAdapter v2.0.0
Znalazłem problem na GitHub (xunit), który wydawał się podobny: Nie można znaleźć testów # 295 , z tym komentarzem od zespołu xunit:
Należy pamiętać, że wiele osób z testami jednostkowymi (nie tylko xUnit.net) zgłosiło, że Visual Studio 2015 CTP 5 zepsuje się, więc nie oczekuj, że to zadziała.
Ponadto upewnij się, że wyczyściłeś pamięć podręczną programu Visual Studio runner. Jeśli zostanie uszkodzony, program Visual Studio będzie trwale działać nieprawidłowo, dopóki nie zostanie usunięty. Aby wyczyścić pamięć podręczną, zamknij wszystkie wystąpienia programu Visual Studio, a następnie usuń folder% TEMP% \ VisualStudioTestExplorerExtensions (szczerze mówiąc, prawdopodobnie nie zaszkodzi usunąć wszystko w% TEMP%, które można usunąć).
Wypróbowałem ich sugestię, aby usunąć folder %TEMP%\VisualStudioTestExplorerExtensions
. Niestety to nie rozwiązało problemu.
Zauważyłem, że ReSharper faktycznie jest w stanie wykryć kilka testów. Działa tylko w przypadku testów VS i NUnit, a nie xunit.
Musi istnieć jakiś folder tymczasowy lub pamięci podręcznej, który muszę wyczyścić, ale wiem, że program Visual Studio ma ich wiele i nie wszystkie można usunąć bez niepożądanych skutków ubocznych.