2010-11-09 16 views
10

Ho alcuni test che si basano su alcuni file che ho contrassegnato come "Contenuto" e su "Copia sempre". Sto usando l'attributo DeploymentItem per assicurarmi che vengano copiati nella directory di output quando si esegue mstest al di fuori di VS. Tuttavia, quando si utilizza il runner di prova di Resharper all'interno di VS, questi file non arrivano mai alla directory da cui sta eseguendo. Qualcuno sa come risolvere questo?Runner test unità di ricerca non trova file di contenuto

+0

Ancora questo problema nel 2015! È davvero uno spettacolo scadente da JetBrains. La loro infrastruttura di test sta diventando un po 'fragile. Penserei che il loro runner di test dovrebbe essere abbastanza intelligente da copiare i file di contenuto nella directory di lavoro del runner di test. –

risposta

4

Abbiamo risolto questo problema contrassegnando i file di test come risorse incorporate e quindi utilizzando a utility method to read the embedded resource e scrivendolo nella posizione prevista.

+0

Questo è il modo migliore e più efficace per gestire i test con dipendenze da file esterni. Ho rinunciato a voci di distribuzione, anche in VS2012 sembra che con ReSharper come il test runner DeploymentItems sono ancora imprevedibili. – nrjohnstone

+0

il link è rotto –

8

La disattivazione dell'opzione per il Raffreddatore Unit Testing > Shadow-copy assemblies being tested ha risolto il problema.

+2

Non volevamo rendere le risorse incorporate, quindi per noi - questa è una soluzione/risposta migliore. +1 –