2014-10-28 12 views
9

Quando si tenta di eseguire i test NUnit con ReSharper, il messaggio seguente viene visualizzato in una finestra di dialogo e i test non vengono eseguiti:ReSharper: "Impossibile avviare la build. Sono disponibili più progetti nella soluzione ..."

The build could not be started. There are multiple projects in the solution at... <name of the csproj file>

ho questo problema con Resharper 8.2.1 ho diversi progetti nella mia soluzione. La maggior parte dei progetti sono librerie di classi. Uno dei progetti è un sito Web (non progetto esattamente). Un altro è un'applicazione Web. Il sito Web e i progetti di applicazione Web si trovano nella stessa directory. Il sito Web è impostato per essere creato solo nella build Release.

Ho questo problema solo nel progetto di applicazione Web, quando provo a eseguire alcuni test incorporati in questo progetto. Non ho questo problema in altri progetti (libreria di classi).

Il problema era in JetBrains' bug tracker, ma è stata chiusa: https://youtrack.jetbrains.com/issue/RSRP-328627

Forse c'è qualche soluzione?

Aggiornamento: Quando io "Progetto -> Scarica progetto" sul sito web, il problema scompare

+0

Perché stai usando un sito web? Sono molto strani e non mi sorprende che ReSharper abbia problemi con loro. Molti strumenti fanno. Ad esempio, sai che i siti Web non vengono effettivamente creati, giusto? –

+0

@JohnSaunders, perché ho ereditato il progetto in questo modo dal precedente sviluppatore. Dubito che possa facilmente cambiarlo. Il progetto Sito Web è una copia dell'installazione CMS DotNetNuke e le nostre estensioni sono implementate in progetti separati. –

+0

Buona fortuna.Questa è senza dubbio la ragione del problema R #. –

risposta

2

Ho avuto lo stesso problema (anche con 8.2), almeno lo stesso errore quando si esegue il mio test tramite il menu Resharper> Test unità> Esegui tutti i test dalla soluzione. Ma ho trovato il seguente lavoro:

Fare clic con il tasto destro del mouse sul progetto di verifica dell'unità e selezionare Esegui test unità. questo inizierà a correre tutti i test del progetto (dall'interfaccia ReSharper)

In alternativa è possibile impostare voi soluzione test di unità come l'avvio del progetto e dal menu ReSharper scegliere> unit test> Esegui Unità Test

Ovviamente lo devi fare per ogni progetto che ha dei test unitari, ma immagino che sia accettabile.

Nota: sembra essere un bug noto di versione 8.2 https://youtrack.jetbrains.com/issue/RSRP-411631 E che sul ritorno alla 8.1 può risolvere il problema

Spero che questo aiuti.

0

Verificare se sono state apportate modifiche al file della soluzione. Ho riscontrato questo problema dopo una modifica del ramo di controllo del codice sorgente, quando Visual Studio ha mantenuto una serie di modifiche rispetto al ramo precedente. Non sono sicuro di quale sia la causa, ma il ripristino delle modifiche al mio file sln ha risolto il problema.

1

Nel mio caso ciò è accaduto dopo aver eseguito l'analisi delle prestazioni (ad es. La profilazione) in Visual Studio.

come documentato here, la soluzione era quella di rimuovere queste righe dal file .sln:

GlobalSection(Performance) = preSolution 
    HasPerformanceSessions = true 
EndGlobalSection} 
+0

Grazie, questo lo ha risolto per me. – dcp