Opzioni della riga di comando di MSTest.exe
MSTest.exe è il comando della riga di comando utilizzato per eseguire i test.Questo comando dispone di numerose opzioni per la personalizzazione dell'esecuzione dei test.È possibile utilizzare molte di tali opzioni in combinazione con un'altra. In effetti, è necessario utilizzare determinate opzioni insieme ad altre come descritto nelle sezioni seguenti.È possibile specificare queste opzioni in qualsiasi ordine nella riga di comando di MSTest.exe.
MSTest.exe non viene fatta distinzione tra maiuscole e minuscole ai fini dell'interpretazione delle opzioni e dei relativi valori specificati.
Nelle seguenti tabelle vengono illustrate tutte le opzioni per MSTest.exe con una breve descrizione.È possibile visualizzare un riepilogo simile digitando MSTest/h dalla riga di comando.
Opzioni generali della riga di comando
/testcontainer:[nome file] |
Caricamento di un file che contiene dei test. Esempio: /testcontainer:tests.dll Per ulteriori informazioni, vedere /testcontainer. |
/testmetadata:[nome file] |
Caricamento di un file che contiene metadati di un test.Per ulteriori informazioni, vedere /testmetadata. |
/testlist:[percorso elenco test] |
Indicazione dell'elenco di test, specificato nel file di metadati, da eseguire.Per ulteriori informazioni, vedere /testlist. |
/category:[filtro della categoria di test] |
Specificare e filtrare le categorie di test da eseguire.Per ulteriori informazioni, vedere /category. |
/test:[nome test] |
Indicazione del nome di un test da eseguire.Per ulteriori informazioni, vedere /test. |
/noisolation |
Esegue i test all'interno del processo MSTest.exe.Questa opzione migliora la velocità di esecuzione dei test, ma aumenta i rischio connessi al processo MSTest.exe. |
/testsettings: [nome file] |
Utilizzare il file delle impostazioni di test specificato. Esempio: /testsettings:Local.Testsettings Per ulteriori informazioni, vedere /testsettings. |
/runconfig:[nome file] |
Utilizzo del file di configurazione dell'esecuzione specificato. Esempio: /runconfig:localtestrun.Testrunconfig Per ulteriori informazioni, vedere /runconfig.
Nota
Questa opzione della riga di comando è mantenuta per la compatibilità con versioni precedenti di Visual Studio.Le configurazioni delle esecuzioni dei test sono state sostituite dalle impostazioni di test in Visual Studio Premium.
|
/resultsfile:[nome file] |
Salvataggio dei risultati dell'esecuzione dei test nel file specificato. Esempio: /resultsfile:testResults.trx Per ulteriori informazioni, vedere /resultsfile. |
/detail:[id proprietà] |
Indicazione del nome di una proprietà per la quale si desidera mostrare i valori, se presenti, in aggiunta al risultato del test.Per ulteriori informazioni, vedere /detail. |
/help |
Visualizzazione del messaggio di utilizzo di MSTest.exe (forma breve: /? o /h). |
/nologo |
Eliminazione della visualizzazione di un'intestazione di avvio e del messaggio di copyright. |
/usestderr |
Utilizzare un errore standard per restituire informazioni sugli errori. |
Opzioni della riga di comando per la pubblicazione dei risultati del test
Per ulteriori informazioni su queste opzioni, vedere Opzioni della riga di comando per la pubblicazione dei risultati del test.
/publish:[Nome server] |
Pubblicare i risultati nel database relativo alla raccolta di progetti team del server specificato. |
/publishresultsfile:[nome file] |
Indicazione del nome del file dei risultati da pubblicare.Se non viene specificato un nome file, utilizzare il file prodotto dall'esecuzione corrente. |
/publishbuild:[id compilazione] |
Pubblicazione dei risultati del test utilizzando questo ID di compilazione. |
/teamproject:[nome progetto team] |
Indicazione del nome del progetto team a cui appartiene la compilazione. |
/platform:[Piattaforma] |
Indicazione della piattaforma della compilazione in cui pubblicare i risultati del test. |
/flavor:[contrassegno] |
Indicazione della caratteristica della compilazione con cui pubblicare i risultati del test. |
Utilizzo delle opzioni di MSTest
Nelle sezioni seguenti vengono dettagliatamente descritte molte delle opzioni per MSTest.exe.Le opzioni utilizzate per la pubblicazione dei risultati del test non sono incluse qui.Per ulteriori informazioni su queste opzioni, vedere Opzioni della riga di comando per la pubblicazione dei risultati del test .
/testcontainer
/testcontainer:[nome file]
Test container è un file che contiene i test da eseguire.Ad esempio, per i test ordinati, il test container è il file .orderedtest che definisce il test ordinato.Per gli unit test, è l'assembly compilato dal progetto del test contenente i file di origine dello unit test.
[!NOTA]
Per gli unit test, si tratta dell'assembly contenente il codice del test e non dell'assembly contenente il codice dell'applicazione sottoposta a test.Ad esempio, se la soluzione contiene un progetto denominato BankAccount e un progetto test corrispondente denominato BankAccountTest, specificare /testcontainer:BankAccountTest.dll.
[!NOTA]
Poiché anche il file di metadati del test contiene l'elenco dei test eseguibili, è necessario specificare sia l'opzione /testcontainer che /testmetadata in una sola riga di comando.Questa operazione è piuttosto ambigua e potrebbe creare un errore.
/testmetadata
/testmetadata:[nome file]
L'opzione /testmetadata consente di eseguire i test in più Test container.
Il file dei metadati del test viene creato per la soluzione quando si creano gli elenchi di test utilizzando la finestra Editor elenco dei test.In questo file sono contenute informazioni su tutti i test elencati nella finestra Editor elenco dei test.L'elenco comprende tutti i test che esistono in tutti i progetti di test della soluzione.
Il file di metadati del test è un file XML creato nella cartella della soluzione.Questo file è riportato in Esplora soluzioni nel nodo Elementi di soluzione.I file di metadati di test hanno estensione vsmdi e sono associati alla finestra Editor elenco dei test.Pertanto, se si fa doppio clic su un file con estensione vsmdi in Esplora risorse (o Esplora File), il file verrà aperto in Visual Studio con i relativi contenuti.Tutti i test inclusi nei progetti di test di una soluzione vengono visualizzati nella finestra Editor elenco dei test.
È possibile modificare il file dei metadati del test apportando modifiche visibili nella finestra Editor elenco dei test, come la creazione o l'eliminazione di test o la modifica delle proprietà dei test.
[!NOTA]
Poiché Test container contiene i test eseguibili, è necessario specificare sia l'opzione /testcontainer che /testmetadata in una sola riga di comando.Questa operazione è piuttosto ambigua e potrebbe creare un errore.
Quando si utilizza l'opzione /testmetadata, si consiglia di indicare test specifici da eseguire utilizzando l'opzione /test o l'opzione /testlist, oppure entrambe.
/testlist
/testlist:[percorso elenco test]
L'opzione /testlist rappresenta un elenco di test, come specificato nel file di metadati del test, da eseguire.Per eseguire i test contenuti in più elenchi di test, utilizzare più volte l'opzione /testlist.I test ordinati nell'elenco dei test verranno eseguiti.
[!NOTA]
È possibile utilizzare l'opzione /testlist solo se si utilizza anche l'opzione /testmetadata.
È possibile utilizzare l'opzione /testlist e l'opzione /test contemporaneamente.Tale azione equivale a selezionare un elenco di test e uno o più test singoli nella finestra Editor elenco dei test e, quindi, scegliere Esecuzione dei test.
/category
/category:[filtro della categoria di test]
Utilizzare l'opzione /category per specificare la categoria di test da eseguire.
[!NOTA]
È necessario utilizzare l'opzione /testcontainer per poter utilizzare l'opzione /category.
È possibile utilizzare l'opzione /category una sola volta per ciascuna riga di comando, tuttavia è possibile specificare più categorie di test con il filtro della categoria di test.Il filtro della categoria di test è costituito da uno o più nomi di categorie di test separati dagli operatori logici '&', '|', '!', '&!'.Gli operatori logici '&' e '|' non possono essere utilizzati insieme per creare un filtro di categoria di test.
Di seguito è riportato un esempio:
/category:group1 esegue i test nella categoria di test "group1".
/category:"group1&group2" esegue i test che si trovano in entrambe le categorie "group1" e "group2". I test che si trovano solo in una delle categorie specificate non verranno eseguiti.
/category:"group1|group2" esegue i test che si trovano nella categoria di test "group1" o "group2".Verranno inoltre eseguiti i test che si trovano in entrambe le categorie di test.
/category:"group1&!group2" esegue i test dalla categoria di test "group1" ma non presenti nella categoria "group2". Un test presente in entrambe le categorie "group1" e "group2" non verrà eseguito.
[!NOTA]
Se il filtro è costituito da una sola categoria quale /category:group1, non è necessario racchiuderlo tra virgolette.Tuttavia, se il filtro fa riferimento a più categorie, ad esempio /category:"group1&group2", esso deve essere racchiuso tra virgolette.
/test
/test:[nome test]
Utilizzare l'opzione /test per specificare singoli test da eseguire.Per eseguire più test, utilizzare più volte l'opzione /test.
[!NOTA]
È possibile utilizzare l'opzione /test insieme all'opzione /testcontainer o /testmetadata ma non con entrambe.
È possibile utilizzare l'opzione /testlist e l'opzione /test contemporaneamente.Tale azione equivale a selezionare un elenco di test e uno o più test singoli nella finestra Editor elenco dei test e, quindi, scegliere Esecuzione dei test.
La stringa specificata con l'opzione /test consente di mettere in corrispondenza i nomi dei test in un test container o in un file di metadati di test.Ciò vuol dire che è possibile specificare più test utilizzando un solo valore per /test.Ad esempio, specificando /test:ittest vengono create le corrispondenze per i test denominati DebitTest e CreditTest perché i nomi di entrambi i test contengono la sottostringa 'ittest'.
[!NOTA]
Il valore specificato con l'opzione /test viene testato non solo rispetto al nome del test, ma anche al relativo percorso, come visualizzato in Esplora soluzioni, oppure con unti test in base al nome completo.
Di seguito sono riportati due esempi di utilizzo:
Esempio di unit test: il file UnitTest1.cs nel progetto TestProject2 contiene uno unit test denominato TestMethod1.Specificano un valore 'ittest' per l'opzione /test viene creata la corrispondenza con questo test perché la stringa viene testata rispetto al nome completo "TestProject2.UnitTest1.TestMethod1" e la stringa 'ittest' viene inclusa in 'UnitTest1'.
Esempio di test generico: la seguente riga di comando consente di eseguire un test generico specificato e visualizza il percorso completo del test nei risultati.
mstest /testcontainer:"C:\Documents and Settings\<user name>\My Documents\Visual Studio\Projects\TestProject2\TestProject2\generictest1.generic" /test:testproject32\generic
/noisolation
/noisolation
Utilizzare questa opzione per eseguire test all'interno del processo MSTest.exe.L'utilizzo di questa opzione non comporta modifiche alla configurazione di esecuzione dei test.Il suo scopo è migliorare la velocità di esecuzione dei test.Tuttavia, aumenta il rischio complessivo connesso all'esecuzione dei test, in quanto un'eccezione non gestita generata dal codice di test causerebbe l'arresto anomalo del processo MSTest.exe.
/testsettings
/testsettings:[nome file]
Utilizzare questa opzione per specificare un file di impostazioni di test.Ad esempio: /testsettings:local.Testsettings
È possibile specificare un file di impostazioni di test in altri modi, ad esempio con l'opzione /testmetadata.Le regole che controllano la specifica dei file di impostazioni di test sono descritte qui.
Se si utilizza l'opzione /testsettings, verrà utilizzato il file specificato, indipendentemente dall'utilizzo dell'opzione /testmetadata.
Se si utilizza l'opzione /testmetadata per fare riferimento a un file di metadati che specifica il file di impostazioni di test attivo, quest'ultimo verrà utilizzato se non si utilizza l'opzione /testsettings.
Se non si utilizza l'opzione /testsettings né si specifica un file di impostazioni di test nel file dei metadati di test, per l'esecuzione dei test viene utilizzato il file delle impostazioni di test predefinito.
[!NOTA]
Per ulteriori informazioni sui file delle impostazioni di test, vedere Creare impostazioni test per test di sistema automatizzati tramite Microsoft Test Manager.
/runconfig
/runconfig:[nome file]
Nota Questa opzione della riga di comando è mantenuta per la compatibilità con versioni precedenti di Visual Studio.Le configurazioni delle esecuzioni dei test sono state sostituite dalle impostazioni di test in Visual Studio Premium.
Utilizzare questa opzione per specificare un file di configurazione di esecuzione.Ad esempio: /runconfig:localtestrun.Testrunconfig
È possibile specificare un file di configurazione di esecuzione in altri modi, ad esempio con l'opzione /testmetadata.Le regole che gestiscono i file di configurazione di esecuzione sono descritte qui.
Se si utilizza l'opzione /runconfig, sarà utilizzato il file specificato, indipendentemente dall'utilizzo dell'opzione /testmetadata.
Se si utilizza l'opzione /testmetadata per indicare un file di metadati che specifichi il file di configurazione di esecuzione attivo, quel file sarà utilizzato se non si utilizza l'opzione /runconfig.
Se non si utilizza l'opzione /runconfig e non si specifica un file di configurazione di esecuzione nel file di metadati del test, l'esecuzione del test utilizza il file di configurazione di esecuzione predefinito.
/resultsfile
/resultsfile:[nome file]
Utilizzare questa opzione per salvare i risultati di esecuzione del test nel file indicato.Ad esempio: /resultsfile:testResults.trx.
/usestderr
/usestderr
Se si utilizza questa opzione nell'errore standard verranno scritte le informazioni seguenti:
Test con un risultato non superato, interrotto, errore, scaduto, non eseguibile o non eseguito.
Errori al livello di esecuzione.
Errori nell'analisi degli argomenti della riga di comando.
Riepilogo dell'esecuzione nel caso in cui l'esecuzione del test abbia avuto un risultato negativo.
Senza questa opzione, tutto l'output viene inviato all'output standard.
/detail
/detail:[id proprietà]
Questa opzione consente di visualizzare proprietà aggiuntive del test case, se esistono.È possibile passare più istanze dell'opzione /detail, ciascuna con un solo ID della proprietà, in una sola riga di comando.Di seguito sono elencati ID di proprietà validi per l'opzione /detail.
adapter |
id |
projectrelativepath |
computername |
isautomated |
readonly |
debugtrace |
link |
spoolmessage |
description |
longtext |
stderr |
displaytext |
name |
stdout |
durata |
outcometext |
storage |
errormessage |
owner |
testcategoryid |
errorstacktrace |
parentexecid |
testname |
executionid |
priority |
testtype |
gruppi |
projectname |
traceinfo |
[!NOTA]
La selezione effettiva degli ID di proprietà che è possibile utilizzare con l'opzione /detail varia in base al tipo di test.Quindi, questo elenco è solo approssimativo.In particolare, se si utilizzano tipi di test personalizzati, la selezione delle proprietà sarà diversa.Per individuare gli ID della proprietà utilizzabili, analizzare il file dei risultati del test creato dall'esecuzione dei test.Per ulteriori informazioni sui file dei risultati dei test, vedere Procedura: salvare e aprire risultati dei test in Visual Studio.
Se una proprietà esiste per un determinato test case, le relative informazioni sono incluse nel riepilogo dei risultati dell'output.
Ad esempio, la riga di comando:
mstest /testcontainer:Errors.dll /detail:testtype
crea il seguente output contenente le informazioni sul tipo di test:
...
Results Top Level Tests
-------- -----------------
Inconclusive TestProject2.BankAccountTest.CreditTest
[testtype] = Unit Test
...