Domanda

Ho due progetti di test unitario nella mia soluzione VS 2010. Ogni progetto ha una directory di dati con dati di input necessari per i test dell'unità.

Ho annotato le classi di prova che necessitano dei dati con

[DeploymentItem("Data")]
.

Quando eseguo i test singolarmente, la correre bene. Tuttavia, quando eseguo (o debug) tutti i test nella soluzione, trovo che solo una delle due directory di dati viene copiata su TestResults\MyTestDir-YYYY-MM-DD HH_mm_SS\Out, causando test dell'unità che si basano sulla directory di dati.

È interessante notare se quindi utilizzo la finestra Risultati del test per rielaborare i test selezionati (come nei non riusciti), i test ancora falliscono (non riconoscono che i file corretti della directory dei dati mancano). Se poi navigo direttamente su un test non riuscito e selezionare Esegui test nel contesto corrente, il test Esegui ottiene la directory dei dati corretta e il test ha successo.

La mia domanda : Come posso causare DeploymentItems da due progetti di test separati da copiare nella directory Out in cui vengono eseguiti i test?

Per riferimento, ho rivisto queste domande senza notare una soluzione

Problemi con Attributo DeploymentItem

MSTest Deployment Elementi funzionano solo quando presente nel file delle impostazioni del test del progetto?

È stato utile?

Soluzione

Ho trovato che dare a ciascuna directory "dati" un nome univoco (ad esempio "testprojectitadata") risolto il problema.Sembra esserci una sorta di bug quando più directory in diversi percorsi hanno lo stesso percorso relativo a diversi progetti di test (cioè se ogni progetto di test ha una sottodirectory chiamata "Dati").

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top