Eseguire test nel processo di compilazione

È possibile usare Team Foundation Build per eseguire test automatizzati e analizzare l'impatto delle modifiche al codice sui test come parte del processo di compilazione. Ad esempio, è possibile definire un processo di compilazione da usare come esecuzione del test di verifica della compilazione regolarmente pianificata del team. È inoltre possibile eseguire test automatizzati e attività correlate ai test dai processi di compilazione personalizzati.

Nota

Se si desidera distribuire l'applicazione come parte del processo di compilazione, è necessario usare un flusso di lavoro compilazione-distribuzione-test e un ambiente lab.È quindi possibile eseguire test automatizzati come parte del flusso di lavoro oppure eseguire i test separatamente una volta completato il flusso di lavoro.Per altre informazioni, vedere Flussi di lavoro compilazione, distribuzione e test automatici.

Operazioni che è possibile eseguire Team Foundation Build

  • Prepararsi a eseguire test nel processo di compilazione

  • Eseguire test automatizzati

  • Specificare criteri per l'esecuzione dei test tramite Visual Studio Test Runner

  • Disabilitare temporaneamente i test

  • Abilitare l'analisi dell'impatto sui test

  • Definire esecuzioni di test multiple

  • Configurare un framework unit test di terze parti

  • Usare i test in un processo di compilazione personalizzato

  • Ottenere ulteriori informazioni

Prepararsi a eseguire test nel processo di compilazione

Prima di eseguire test nel processo di compilazione, potrebbe essere necessario preparare innanzitutto i test e il sistema di compilazione.

Preparare i test: assicurarsi che la soluzione e i file di test siano archiviati nel controllo della versione. Vedere Utilizzare il controllo della versione.

Suddividere in categorie e classificare in ordine di priorità i test (facoltativo): è possibile assegnare categorie e priorità ai test e applicare filtri in base a tali attributi quando vengono eseguiti nella compilazione. Ad esempio, è possibile creare una categoria di test denominata CI, quindi specificarla nelle compilazioni di integrazione continue. È possibile creare un'altra categoria per i test di verifica della compilazione, detti BVT, quindi specificare tale categoria nelle compilazioni pianificate, ad esempio le compilazioni notturne. Per altre informazioni, vedere Definizione di categorie per raggruppare i test, TestCategoryAttribute e PriorityAttribute.

Preparare il server di compilazione: alcuni tipi di test possono essere eseguiti solo da un agente di compilazione in un server di compilazione configurato in modo specifico. Ad esempio, se si eseguono test codificati dell'interfaccia utente, è necessario configurare il proprio agente di compilazione in modo interattivo. Prima di tentare di usare il processo di compilazione per eseguire i test, accertarsi che possano essere eseguiti nel server di compilazione che si intende usare. Per altre informazioni, vedere Use Your Build Agent to Run Tests.

È necessario che Microsoft Visual Studio sia installato nel server di compilazione per gli scenari seguenti.

  • Per compilare il progetto di test CPP, è necessario installare Visual Studio Professional  o versione successiva.

  • Per eseguire gli unit test o i test codificati dell'interfaccia utente, è necessario installare Visual Studio Professional  o versione successiva.

  • Per usare dati e adattatori dati di diagnostica:

    1. Code coverage: Visual Studio Premium o versioni successive.

    2. Impatto test: Visual Studio Ultimate.

    3. IntelliTrace: Visual Studio Ultimate.

  • Per compilare applicazioni in stile moderno in un computer di compilazione: Visual Studio Ultimate o Visual Studio Express per Windows 8 (il sistema operativo del server di compilazione deve essere Windows 8).

  • Per compilare ed eseguire test per un progetto con un assembly simulato: Visual Studio Ultimate.

Eseguire test automatizzati

È possibile eseguire una o più esecuzioni dei test nella compilazione in base al Modello predefinito. Per ogni esecuzione è possibile specificare le seguenti impostazioni:

  • Quali test vengono eseguiti

  • Quali impostazioni vengono usate per eseguire i test

  • Se la compilazione non deve essere completata se un test non riesce

  1. In Team Explorer scegliere Icona Home Pagina iniziale, quindi Icona Compilazioni Compilazioni (tastiera: CTRL + 0, B).

  2. Nella pagina Compilazioni scegliere Nuova definizione di compilazione o aprire il menu di scelta rapida della compilazione o della definizione di compilazione selezionata e scegliere Modifica definizione di compilazione.

    Verrà visualizzata la finestra Definizione di compilazione.

  3. Nella scheda Processo della definizione di compilazione selezionare la casella Test automatizzati, quindi scegliere il pulsante con i puntini di sospensione (...).

    Verrà visualizzata la finestra di dialogo Test automatizzati.

  4. Effettuare uno dei passaggi indicati di seguito.

    • Per aggiungere un set di test, scegliere Aggiungi.

    • Per modificare un set di test, selezionarlo e quindi scegliere Modifica.

    Verrà visualizzata la finestra di dialogo Aggiungi/modifica test.

  5. (Facoltativo) Specificare il Nome dell'esecuzione dei test. Questo nome viene visualizzato nella finestra dei risultati di compilazione. Se non si specifica un nome, il sistema lo genera automaticamente.

  6. Se si desidera che la compilazione non venga completata qualora un test qualsiasi dovesse fallire, scegliere Errore compilazione se test non superato. Se si lascia deselezionata questa casella di controllo e un test qualsiasi non funziona, la compilazione completata sarà classificata come Eseguita parzialmente.

  7. Eseguire il test della specifica del file di assembly

    Specificare i file binari che contengono i test da eseguire. Lasciare invariato il valore predefinito (**\*test*.dll) se si desidera che l'agente di compilazione cerchi in modo ricorsivo tutti i file dll che corrispondono a *test*.dll nella sottodirectory binaries della directory di lavoro dell'agente di compilazione. In alternativa, modificare la specifica del file in base alle esigenze.

  8. Se si desidera che l'esecuzione dei test raccolga e pubblichi i dati di code coverage, impostare Opzioni su Abilita code coverage.

    In alternativa, è possibile usare l'opzione Personalizzato per specificare un file con estensione runsettings. Per altre informazioni, vedere Personalizzazione dell'analisi code coverage.

  9. Dal menu Selezionare piattaforma di destinazione per l'esecuzione dei test scegliere x86 per testare i file binari a 32 bit o x64 per testare i file binari a 64 bit.

  10. È possibile specificare criteri per i test eseguiti.

Specificare criteri per l'esecuzione dei test tramite Visual Studio Test Runner

È possibile specificare coppie nome/valore per filtrare i test eseguiti. Se si usano categorie di test e attributi di priorità per organizzare e classificare i test in ordine di priorità, è possibile filtrare i test in esecuzione usando i nomi Priorità e TestCategory.

È possibile specificare categorie di test in uno dei formati seguenti:

  • Specificare una singola coppia nome/valore da includere. Si dispone, ad esempio, di una categoria di test denominata BVT. Impostare Filtro test case su TestCategory=bvt per eseguire solo i test appartenenti a questa categoria.

  • **Specificare più categorie di test tramite || (l'operatore "or").**Ad esempio, è possibile specificare TestCategory=quick||TestCategory=gui per l'esecuzione dei test appartenenti alla categoria quick e alla categoria gui.

Disabilitare temporaneamente i test

Se è necessario disabilitare temporaneamente i test senza eliminare il set di test che li contiene, espandere il nodo Avanzate e impostare Disabilita test su True. Quando si desidera abilitare nuovamente i test, reimpostare il valore su Falso.

Abilitare l'analisi dell'impatto sui test

I tester e gli sviluppatori potrebbero avere l'esigenza di sapere in che modo le modifiche al codice incluse in una compilazione completata hanno influito sui test. Quando si abilita l'analisi dell'impatto sui test in una compilazione, il sistema analizza e quindi segnala in che modo le modifiche al codice hanno influito sui test nel rapporto di compilazione della compilazione completata.

Per abilitare l'analisi dell'impatto del test in un processo di compilazione basato sul modello predefinito

  1. Configurare l'analisi dell'impatto sui test in un file di impostazioni test.

    Per altre informazioni, vedere Procedura: raccogliere dati per verificare i test da eseguire dopo che sono state apportate modifiche al codice.

  2. Creare un set di test configurato per l'utilizzo del file di impostazioni test.

    Per altre informazioni, vedere la precedente sezione Eseguire test automatizzati in questo argomento.

  3. Espandere il nodo Avanzate e verificare che Analizza impatto test sia impostata su True e che Disabilita test sia impostata su False.

Definire esecuzioni di test multiple

È possibile definire quante più esecuzioni dei test sono necessarie per soddisfare i requisiti del processo di compilazione e di test del team. Ad esempio, potrebbe essere necessario definire più esecuzioni dei test in un'unica compilazione negli scenari seguenti:

  • Si desidera usare Visual Studio Test Runner per testare una soluzione che produce binari a 32 e a 64 bit.

  • Si dispone di due set di test:

    • Un set di test di base ad alta priorità che deve essere superato. Si definisce un set di test che include un valore di Priorità di test minima e Priorità di test massima pari a 1. Si seleziona la casella di controllo Errore compilazione se test non superato.

    • Un set di test meno importanti che si desidera eseguire, ma il cui superamento non è obbligatorio perché la compilazione sia utilizzabile. Si definisce un set di test che include un valore di Priorità di test minima pari a 2 e un valore di Priorità di test massima pari a 3. Si lascia deselezionata la casella di controllo Errore compilazione se test non superato.

  • Si desidera eseguire lo stesso set di test con impostazioni test diverse.

  • Si desidera che il set di assembly principale da compilare sia soggetto a code coverage. Si dispone tuttavia di un altro set di assembly da un'origine esterna che non richiede code coverage. Per abilitare questo tipo di processo, è possibile usare due set di test configurati per l'utilizzo di due gruppi di file di impostazioni test.

Abilitare un framework unit test di terze parti

Il processo di compilazione è in grado di eseguire unit test basati su framework unit test di terze parti, solo se il controller di compilazione è configurato per l'accesso agli assembly del framework di terze parti.

  1. Individuare o, se necessario, specificare il percorso del controller di compilazione negli assembly personalizzati.

  2. Individuare o, se necessario, creare un mapping dalla cartella dell'assembly personalizzato sul server a una cartella locale nell'area di lavoro.

  3. Ottenere un plug-in dello unit test di terze parti:

    Adattatore

    Linguaggio

    Incremento

    C++

    Chutzpah

    JavaScript

    Google

    C++

    MbUnit

    C#

    MSpec

    MSpec

    nUnit

    C#

    Python Tools per Visual Studio

    Python

    Silverlight

    Silverlight

    TSTestAdapter

    TypeScript

    VsNodeTest

    Node.js

    xUnit.net

    C#

    xUnit + +

    C++

  4. Rinominare il file di plug-in con estensione vsix in un file con estensione zip. Ad esempio, usare il prompt dei comandi come indicato di seguito:

    C:\Downloads>ren NUnitTestAdapter.vsix NUnitTestAdapter.zip
    
  5. Decomprimere i contenuti del file zip nella cartella locale dell'area di lavoro mappata nel passaggio 2.

  6. Archiviare i file.

    Suggerimento

    Per strategie relative all'utilizzo di file binari di terze parti nel controllo della versione, vedere Usare i binari di terze parti che il codice non compila.

[Visual Studio 2012.3] include un miglioramento per i framework unit test di terze parti per automatizzare la relativa inclusione nelle definizioni di compilazione team.

Avviso

Potrebbe essere necessario installare la versione più recente dei pacchetti NuGet per il framework unit test di terze parti per accertarsi che il framework includa il miglioramento della definizione di compilazione.

Abilitare un framework unit test di terze parti in un controller di compilazione - [Visual Studio 2012.1]

  1. In Esplora soluzioni aprire il menu di scelta rapida per il progetto di test e scegliere Gestisci pacchetti NuGet.

  2. Nella finestra di dialogo Gestisci pacchetti NuGet scegliere Online nella colonna sinistra.

  3. Selezionare il pacchetto NuGet per il framework unit test di terze parti e scegliere Installa.

  4. Al termine dell'installazione del pacchetto NuGet, scegliere Chiudi.

  5. In Esplora soluzioni aprire il menu di scelta rapida della soluzione e scegliere Aggiungi soluzione al controllo del codice sorgente.

  6. È ora possibile accodare la compilazione. I test con il framework unit test di terze parti verranno eseguiti automaticamente.

Usare i test in un processo di compilazione personalizzato

Se il team richiede un processo di compilazione con funzionalità maggiormente personalizzate, è possibile eseguire i test ed altre attività correlate ai test all'interno del processo di compilazione personalizzato. Per altre informazioni, vedere:

Successiva attività da provare

Pianificare test manuali Team Web Access

Andare più a fondo

In Utilizzare il modello predefinito per il processo di compilazione sono disponibili ulteriori informazioni su come creare una definizione di compilazione basata sul modello predefinito. In questa sezione sono incluse informazioni sulle impostazioni del numero di bit della Piattaforma che è possibile usare quando si compila il codice.

Vedere anche

Concetti

Definire il processo di compilazione

Eseguire test automatizzati da un flusso di lavoro compilazione, distribuzione e test

Altre risorse

Esecuzione di test di sistema mediante Microsoft Visual Studio