EDIT 2016-10-19:
La domanda originale riguardava un problema specifico di VS2015 CTP6 con il test runner XUnit. Dalle risposte emerge che esiste un problema molto più ampio con il rilevamento di unit test in Visual Studio che può verificarsi in diverse situazioni. Ho ripulito la mia domanda per riflettere ciò.
Ho anche incluso uno script nella mia risposta che uso ancora oggi per risolvere problemi simili quando compaiono.
Molte altre risposte si sono dimostrate utili anche per comprendere meglio la complessità del test runner VS. Apprezzo che le persone condividano ancora le loro soluzioni!
Domanda originale 2015-04-10:
Da ieri, Visual Studio Test Explorer non rileverà i test per nessuno dei miei progetti. Non mostra nemmeno la barra di caricamento verde dopo la costruzione.
Quando vado in Visual Studio Test Explorer e faccio clic su "Esegui tutto" o quando faccio clic con il pulsante destro del mouse su qualsiasi metodo di prova e seleziono "Esegui test", nella finestra di output ottengo quanto segue:
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.
Sono in esecuzione di Visual Studio 2015 CTP 6 su Windows 10 Pro Technical Preview, accumulo 10041. La versione .NET Framework non sembra avere importanza - succede su 4.0
, 4.5.2
e 4.6
.
Ho provato con i seguenti framework di test e tutti danno lo stesso comportamento:
Microsoft.VisualStudio.QualityTools.UnitTestFramework v14.0.22609.0
xunit v2.1.0-beta1-build2945
conxunit.runner.visualstudio v2.1.0-beta1-build1051
NUnit v2.6.4
conNUnitTestAdapter v2.0.0
Ho riscontrato un problema su GitHub (xunit) che sembrava essere simile: Impossibile ottenere i test scoperti # 295 , con questo commento dal team di xunit:
Tieni presente che Visual Studio 2015 CTP 5 è stato segnalato per essere rotto da molte persone con unit test in generale (non solo xUnit.net), quindi non aspettarti che funzioni.
Inoltre, assicurati di aver ripulito la cache del corridore di Visual Studio. Se viene danneggiato, Visual Studio si comporta in modo permanente fino a quando non viene eliminato. Per cancellare la cache, chiudere tutte le istanze di Visual Studio, quindi eliminare la cartella% TEMP% \ VisualStudioTestExplorerExtensions (onestamente, probabilmente non farebbe male eliminare tutto in% TEMP% che può essere eliminato).
Ho provato il loro suggerimento per eliminare la cartella %TEMP%\VisualStudioTestExplorerExtensions
. Purtroppo questo non ha risolto il problema.
Ho notato che ReSharper è effettivamente in grado di scoprire alcuni test. Funziona solo per i test VS e NUnit, non per xunit.
Ci deve essere una sorta di cartella temporanea o cache che devo cancellare, ma so che Visual Studio ne ha molti e non tutti possono essere eliminati senza effetti collaterali indesiderati.