

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Crea report sulla copertura del codice
<a name="code-coverage-report"></a>

CodeBuild consente di generare report sulla copertura del codice per i test. Vengono forniti i seguenti report di copertura del codice:

Copertura della linea  
La copertura della linea misura quante dichiarazioni coprono i test. Una dichiarazione è una singola istruzione, non include commenti o condizionali.  
`line coverage = (total lines covered)/(total number of lines)`

Copertura del ramo  
La copertura del ramo misura il numero di rami che i test coprono da ogni possibile ramo di una struttura di controllo, ad esempio un’istruzione `if` o `case`.  
`branch coverage = (total branches covered)/(total number of branches)`

Sono supportati i seguenti formati di file di report di copertura del codice:
+ JaCoCo XML
+ SimpleCov JSON¹
+ Clover XML
+ Cobertura XML
+ INFORMAZIONI LCOV

[¹ CodeBuild accetta report sulla copertura del codice JSON generati da [simplecov, non da simplecov-json](https://github.com/simplecov-ruby/simplecov).](https://github.com/vicentllongo/simplecov-json)

## Crea un rapporto sulla copertura del codice
<a name="code-coverage-report-create"></a>

Per creare un rapporto sulla copertura del codice, esegui un progetto di compilazione configurato con almeno un gruppo di rapporti sulla copertura del codice nel relativo file buildspec. CodeBuild interpreterà i risultati della copertura del codice e fornirà un rapporto sulla copertura del codice per l'esecuzione. Per ogni compilazione successiva che dovesse utilizzare lo stesso file buildspec, verrà generato un nuovo report di test. 

**Come creare un report di test**

1. Creare un progetto di compilazione. Per informazioni, consulta [Crea un progetto di compilazione in AWS CodeBuild](create-project.md).

1. Configura il file buildspec del tuo progetto con le informazioni del rapporto di test:

   1. Aggiungi una `reports:` sezione e specifica il nome per il tuo gruppo di report. CodeBuild crea per te un gruppo di report utilizzando il nome del tuo progetto e il nome che hai specificato nel formato `project-name` -`report-group-name-in-buildspec`. Se si dispone già di un gruppo di report da utilizzare, basta specificarne l'ARN. Se si utilizza il nome anziché l'ARN, CodeBuild crea un nuovo gruppo di report. Per ulteriori informazioni, consulta [Reports syntax in the buildspec file](build-spec-ref.md#reports-buildspec-file). 

   1. Nel gruppo di report, specificate la posizione dei file che contengono i risultati della copertura del codice. Se utilizzi più di un gruppo di report, specifica le posizioni dei file dei risultati per ogni gruppo di report. Ogni volta che viene eseguito il progetto di compilazione viene creato un nuovo rapporto sulla copertura del codice. Per ulteriori informazioni, consulta [Specifica dei file di test](report-group-test-cases.md).

      Questo è un esempio che genera un rapporto sulla copertura del codice per un file di risultati JaCoCo XML che si trova in test-`results/jacoco-coverage-report.xml`.

      ```
      reports:
        jacoco-report:
          files:
            - 'test-results/jacoco-coverage-report.xml'
          file-format: 'JACOCOXML'
      ```

   1. Nella `commands` sezione della `post_build` sequenza `build` or, specificate i comandi che eseguono l'analisi della copertura del codice. Per ulteriori informazioni, consulta [Specifica dei comandi di test](report-group-test-case-commands.md). 

1. Eseguire una compilazione del progetto. Per ulteriori informazioni, consulta [Esegui AWS CodeBuild le build manualmente](run-build.md).

1. Al termine, selezionare la nuova esecuzione di compilazione da **Build history (Cronologia delle compilazioni)** alla pagina del progetto. Scegliete **Rapporti** per visualizzare il rapporto sulla copertura del codice. Per ulteriori informazioni, consulta [Visualizzazione dei report di test in una compilazione](test-view-project-reports.md).