Procedura: ottenere dati di code coverage

È possibile valutare l'efficacia dei test riga per riga o blocco per blocco. A tale scopo, configurare le esecuzioni dei test in modo da produrre dati di code coverage. I dati risultanti verranno visualizzati nella finestra Risultati code coverage e nei file del codice sorgente.

I dati di code coverage vengono raccolti dopo che gli elementi, di solito file binari, sono stati instrumentati e, durante un'esecuzione di test, vengono caricati in memoria. Nella procedura Come ottenere dati di code coverage viene descritto come selezionare un file per la strumentazione.

Al termine dell'esecuzione del test, è possibile visualizzare i dati di code coverage. Per ulteriori informazioni, vedere Visualizzazione di dati di code coverage.

È anche possibile unire più insiemi di dati di code coverage, come descritto in Procedura: unire dati di code coverage. Per informazioni sulle varie circostanze relative all'unione di dati di code coverage, vedere Utilizzo di dati di code coverage uniti.

Come descritto in Strumentazione e ripetizione della firma di assembly, gli assembly con nome sicuro che sono stati instrumentati devono essere firmati di nuovo. Per attivare la ripetizione della firma, è necessario specificare un file di chiave.

Come ottenere dati di code coverage

Per ottenere dati di code coverage

  1. Creare i test per il codice. Può trattarsi di unit test o di test di altri tipi che utilizzano il codice per il quale si dispone di simboli e sono stati selezionati i file binari appropriati da instrumentare.

    Per informazioni sulla creazione di unit test, vedere Creazione ed esecuzione di unit test per il codice esistente.

  2. Aprire le impostazioni dei test che saranno utilizzate per gli unit test.

    Per ulteriori informazioni, vedere Creazione di impostazioni di test per l'esecuzione di test automatizzati da Visual Studio.

  3. Seguire i passaggi in questo argomento per configurare i dati di code coverage che si desidera raccogliere: Procedura: configurare code coverage mediante impostazioni di test per test automatizzati.

  4. Eseguire uno o più test.

    Per ulteriori informazioni, vedere Procedura: eseguire test automatizzati da Microsoft Visual Studio.

    Durante l'esecuzione dei test, verranno raccolti dati di code coverage. Per informazioni su come visualizzarli, vedere Visualizzazione di dati di code coverage.

    Nota

    L'esecuzione di VSPerfMon.exe può interagire con la raccolta di dati di code coverage. Per ulteriori informazioni, vedere la sezione "Dati di code coverage e VSPerfMon.exe" in Risoluzione dei problemi relativi agli strumenti di test per Visual Studio ALM.

    I dati di code coverage non possono essere raccolti per un'applicazione eseguita in un processo a 64 bit. Pertanto, quando si richiedono dati di code coverage durante il test di una tale applicazione, il modulo di test imposta il flag "32BIT" nell'intestazione Portable Executable (PE) dell'assembly da instrumentare. Dopo l'esecuzione dei test, viene ripristinato lo stato originale dell'assembly.

Visualizzazione di dati di code coverage

Prerequisito: sono stati eseguiti test che hanno prodotto dati di code coverage, come descritto in Come ottenere dati di code coverage.

Per visualizzare i dati di code coverage

  1. Nella barra degli strumenti Risultati test fare clic su Risultati code coverage. In alternativa, fare clic su Finestre dal menu Test e scegliere Risultati code coverage.

    Viene aperta la finestra Risultati code coverage.

  2. Nella finestra Risultati code coverage, nella colonna Gerarchia viene visualizzato un nodo contenente tutti i dati di code coverage ottenuti dall'ultima esecuzione dei test. Se si è verificato un errore, viene visualizzato un messaggio di errore in questa ubicazione anziché nel nodo radice. Se il nodo è visualizzato, espanderlo.

    Nota

    Per impostazione predefinita, questo nodo di esecuzione dei test viene denominato utilizzando il formato <nome utente>@<nome computer> <data> <ora>. È possibile modificare lo schema di denominazione predefinito nella pagina Generale della finestra di dialogo Opzioni.

  3. Espandere il nodo dell'assembly, per lo spazio dei nomi, e per una classe nel codice di produzione.

    Le righe nella classe rappresentano i relativi metodi. Nelle colonne di questa tabella vengono visualizzate le statistiche di copertura per i singoli metodi, per le classi e per l'intero spazio dei nomi.

  4. Fare doppio clic sulla riga relativa a uno dei metodi della classe.

    Si aprirà il file del codice sorgente per il metodo scelto. In questo file, il codice è evidenziato. Scorrendo il file, è possibile visualizzare il code coverage per gli altri metodi in questo file. Per modificare i colori con cui vengono evidenziate le righe di codice, vedere Modifica della visualizzazione dell'evidenziazione di code coverage.

    Nota

    È possibile selezionare i pulsanti nella barra degli strumenti Strumenti di test per alternare la visualizzazione del code coverage nel file e per spostarsi tra le righe del codice contenuto nel file.

  5. (Facoltativo) Se è stata selezionata la casella di controllo relativa alla DLL del progetto del test, è possibile aprire il file del codice sorgente contenente gli unit test per individuare i metodi di test utilizzati.

Visualizzazione di calcoli di code coverage diversi

Per i calcoli di code coverage i totali vengono visualizzati sotto forma di colonne nella finestra Risultati code coverage. Per visualizzare i calcoli relativi al codice analizzato durante le esecuzioni dei test nonché al codice non analizzato, è possibile attivare fino a otto colonne. Nelle colonne è possibile attivare la visualizzazione dei calcoli sotto forma di percentuale o come totale numerico. È inoltre possibile attivare colonne in cui vengono visualizzati calcoli per righe di codice e per blocchi di codice.

Per visualizzare o nascondere una colonna di dati di code coverage

  1. Fare clic con il pulsante destro del mouse sui dati desiderati nella finestra Risultati code coverage.

  2. Fare clic su Aggiungi/Rimuovi colonne.

  3. Selezionare le caselle di controllo accanto agli elementi che si desidera visualizzare e deselezionare le caselle di controllo relative agli elementi da rimuovere.

  4. Fare clic su OK.

Modifica della visualizzazione dell'evidenziazione di code coverage

Per impostazione predefinita, vengono utilizzati determinati colori per indicare se il codice è stato coperto dai test eseguiti. Le righe evidenziate in blu chiaro sono state utilizzate nell'esecuzione dei test e le righe evidenziate in rosso scuro non sono state utilizzate. Tra le righe evidenziate in marrone chiaro, solo una parte del codice è stata utilizzata.

Per cambiare la visualizzazione dei dati di code coverage

  1. Fare clic su Strumenti, quindi su Opzioni.

    Verrà visualizzata la finestra di dialogo Opzioni

  2. Espandere Ambiente.

  3. Fare clic su Tipi di carattere e colori.

  4. In Mostra impostazioni per, selezionare Editor di testo.

  5. In Visualizza elementi, selezionare l'area di code coverage i cui colori di visualizzazione si desidera cambiare. Le opzioni disponibili sono Area non interessata dal code coverage, Area parzialmente interessata dal code coverage e Area interessata dal code coverage.

  6. Cambiare le impostazioni per questa area del code coverage. È possibile cambiare i colori di sfondo e primo piano, il tipo di carattere, le dimensioni del carattere e il grassetto del testo.

  7. (Facoltativo) Cambiare le impostazioni per altre aree del code coverage.

  8. Una volta completata l'aggiunta delle colonne, fare clic su OK.

Vedere anche

Attività

Procedura: eseguire test automatizzati da Microsoft Visual Studio

Creazione di impostazioni di test per l'esecuzione di test automatizzati da Visual Studio

Risoluzione dei problemi relativi agli strumenti di test per Visual Studio ALM

Concetti

Creazione ed esecuzione di unit test per il codice esistente

Strumentazione e ripetizione della firma di assembly

Utilizzo di dati di code coverage uniti