2013-02-17 7 views
7

Sono seriamente infastidito da questo. \ TestResults e test di distribuzione. Ora sto provando a spegnerlo completamente, ma niente funziona. Da here:Come disattivare la distribuzione di test in VS2012

considerazione l'esecuzione il test di unità direttamente nella directory di output di generazione, in modo che il test viene eseguito più rapidamente. Questo è particolarmente utile sul server di build dopo aver verificato i test. Per fare ciò, aggiungere un file .runsettings alla soluzione, includere False e selezionare il file nel menu Test, Impostazioni test. Lo stesso effetto si verifica in qualsiasi esecuzione di prova in cui DeploymentItemAttribute non viene utilizzato affatto. Tuttavia, non è possibile evitare l'uso di una cartella di distribuzione se si utilizza un file .testsettings, necessario per test di caricamento e Web, test dell'interfaccia utente codificati e qualsiasi test in cui si distribuisce un'applicazione su macchine remote.

  1. Ho cercato di creare una soluzione vuota con solo il C# progetto Unit Test che contiene solo file di test di unità con la singola linea in esso: string text = File.ReadAllText("test.txt"); E indovinate dove sembra backup di questo file? C: \ Codice \ TestDeployment \ TestResults \ iLonely_ILONELY-PC 2013/02/17 13_33_37 \ Out \ test.txt

  2. Ho provato ad aggiungere il file test.runsettings alla soluzione, come descritto here:

    <!-- MSTest adapter --> 
        <MSTest> 
        <MapInconclusiveToFailed>True</MapInconclusiveToFailed> 
        <CaptureTraceOutput>false</CaptureTraceOutput> 
        <DeleteDeploymentDirectoryAfterTestRunIsComplete>False</DeleteDeploymentDirectoryAfterTestRunIsComplete> 
        <DeploymentEnabled>False</DeploymentEnabled> 
        </MSTest> 
    

    L'ho selezionato tramite Test -> Impostazioni test -> Seleziona il file delle impostazioni di test, eseguito i test ... E il risultato è stato lo stesso.

Qualcuno può spiegarmi come eseguire i test dalla cartella Output \ bin {Configuration}?

IMPORTANTE: non ho un file .testsettings, non utilizzo l'attributo DeploymentItem.

+0

Qualsiasi codice che carichi file con un nome percorso relativo è danneggiato. Il tuo test ti ha mostrato il problema, non sparare al messenger. –

+2

Ho scritto questo test solo per vedere dove cerca il file e quindi dove esegue il test. Quindi doveva fallire. – lonelyass

risposta

2

Ho capito che questo è un problema di ReSharper. Quando eseguo il test da VS runner, tutto funziona correttamente, viene eseguito da Output \ bin {Configuration}. Quando eseguo il test da runner ReSharper, esso viene eseguito dalla directory di distribuzione, indipendentemente da ciò che faccio. Ora, la domanda è: come controllare la distribuzione MSTest per il runner di prova ReSharper?

+0

qualsiasi aggiornamento sulla risposta a questo? –

+0

Ho appena ricevuto questo fastidioso problema anche con VS2012 + Resharper, qualcuno ha ricevuto una risposta? – nrjohnstone

+0

No, ho iniziato a utilizzare TestDriven.NET per eseguire i miei test. Funziona bene, inoltre è molto più veloce, quindi funziona con ReSharper. Ma non ha l'interfaccia utente di fantasia per i risultati. – lonelyass

3

Per quanto riguarda la domanda successiva su come controllare la distribuzione MSTest per il runner di prova ReSharper, ho appena eseguito lo stesso problema e risolto.

Per impostazione predefinita, non funziona, ma è possibile farlo funzionare puntando ReSharper al file .testsettings in base a these directions.