

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Informes de pruebas en AWS CodeBuild
<a name="test-reporting"></a>

Puede crear informes CodeBuild que contengan detalles sobre las pruebas que se ejecutan durante las compilaciones. Puede crear pruebas como pruebas unitarias, pruebas de configuración y pruebas funcionales. 

Se admiten los siguientes formatos de archivo de informe de prueba:
+ Cucumber JSON (.json)
+ JUnit XML (.xml)
+ NUnit XML (.xml)
+ NUnit3 XML (.xml)
+ TestNG XML (.xml)
+ Visual Studio TRX (.trx)
+ Visual Studio TRX XML (.xml)

**nota**  
 La última versión compatible de `cucumber-js` es la 7.3.2. 

Cree sus casos de prueba con cualquier marco de pruebas que pueda crear archivos de informes en uno de estos formatos (por ejemplo, el JUnit complemento Surefire, TestNG o Cucumber).

Para crear un informe de pruebas, se añade un nombre de grupo de informes al archivo buildspec de un proyecto de compilación con información sobre los casos de prueba. Cuando ejecuta el proyecto de compilación, se ejecutan los casos de prueba y se crea un informe de pruebas. Se crea un nuevo informe de prueba en el grupo de informes cada vez que se ejecutan los casos de prueba. No es necesario crear un grupo de informes antes de ejecutar las pruebas. Si especifica un nombre de grupo de informes, CodeBuild crea un grupo de informes para usted cuando ejecute los informes. Si desea utilizar un grupo de informes que ya exista, especifique su ARN en el archivo buildspec.

Puede utilizar un informe de pruebas para solucionar un problema durante una ejecución de compilación. Si tiene muchos informes de pruebas de varias compilaciones de un proyecto de compilación, puede utilizar los informes de pruebas para ver tendencias y tasas de pruebas y errores como ayuda para optimizar las compilaciones. 

Un informe caduca 30 días después de su creación. No puede ver un informe de pruebas caducado. Si desea conservar los informes de pruebas durante más de 30 días, puede exportar los archivos de datos sin procesar de los resultados de prueba a un bucket de Amazon S3. Los archivos de prueba exportados no caducan. La información sobre el bucket de S3 se especifica al crear el grupo de informes.

**nota**  
El rol CodeBuild de servicio especificado en el proyecto se usa para obtener permisos de carga en el bucket de S3.

**Topics**
+ [Creación de informes de pruebas](report-create.md)
+ [Creación de informes de cobertura de código](code-coverage-report.md)
+ [Detección automática de informes en CodeBuild](report-auto-discover.md)
+ [Grupos de informes](test-report-group.md)
+ [Marcos de pruebas](test-framework-reporting.md)
+ [Consultar los informes de pruebas](test-view-reports.md)
+ [Permisos de informes de prueba](test-permissions.md)
+ [Estados de un informe de pruebas](test-report.md)

# Creación de informes de pruebas
<a name="report-create"></a>

 Para crear un informe de pruebas, se ejecuta un proyecto de compilación que se configura con uno a cinco grupos de informes en su archivo buildspec. Se crea un informe de pruebas durante la ejecución. Contiene los resultados de los casos de prueba que se especifican para los grupos de informes. Se genera un nuevo informe de pruebas para cada compilación posterior que utilice el mismo archivo buildspec. 

**Para crear un informe de pruebas**

1. Cree un proyecto de compilación. Para obtener información, consulte [Creación de un proyecto de compilación en AWS CodeBuild](create-project.md). 

1. Configure el archivo buildspec del proyecto con información de informe de pruebas 

   1. Añada una sección `reports:` y especifique el ARN de un grupo de informes existente o el nombre de un nuevo grupo de informes. 

      Si especifica un ARN, CodeBuild utiliza ese grupo de informes.

      Si especifica un nombre, CodeBuild crea un grupo de informes para usted con el nombre del proyecto y el nombre que especificó en el formato *<project-name>* -*<report-group-name>*. Si el grupo de informes nombrado ya existe, CodeBuild utiliza ese grupo de informes.

   1. En el grupo de informes, especifique la ubicación de los archivos que contienen los resultados de las pruebas. Si utiliza más de un grupo de informes, especifique las ubicaciones de los archivos de resultados de prueba para cada uno de ellos. Cada vez que se ejecuta el proyecto de compilación, se crea un nuevo informe de pruebas. Para obtener más información, consulte [Especificar archivos de prueba](report-group-test-cases.md). 

   1. En la sección `commands` de la secuencia `build` o `post_build`, especifique los comandos que ejecutan los casos de prueba que ha especificado para sus grupos de informes. Para obtener más información, consulte [Especificar comandos de prueba](report-group-test-case-commands.md). 

   El siguiente es un ejemplo de una sección `reports` de la especificación de compilación:

   ```
   reports:
     php-reports:
       files:
         - "reports/php/*.xml"
       file-format: "JUNITXML"
     nunit-reports:
       files:
         - "reports/nunit/*.xml"
       file-format: "NUNITXML"
   ```

1. Ejecute una compilación del proyecto de compilación. Para obtener más información, consulte [Ejecute AWS CodeBuild compilaciones manualmente](run-build.md). 

1. Cuando la compilación se haya completado, elija la nueva ejecución de la compilación en **Build history (Historial de compilación)** en la página del proyecto. Seleccione **Reports (Informes)** para ver el informe de pruebas. Para obtener más información, consulte [Consultar los informes de pruebas de una compilación](test-view-project-reports.md).

# Creación de informes de cobertura de código
<a name="code-coverage-report"></a>

CodeBuild le permite generar informes de cobertura de código para sus pruebas. Se proporcionan los siguientes informes de cobertura de código:

Cobertura de línea  
La cobertura de línea mide el número de declaraciones cubiertas por las pruebas. Una declaración es una sola instrucción, in contar comentarios ni condicionales.  
`line coverage = (total lines covered)/(total number of lines)`

Cobertura de ramificaciones  
La cobertura de ramificaciones mide cuántas ramificaciones cubren las pruebas de cada ramificación posible de una estructura de control, como una declaración `if` o `case`.  
`branch coverage = (total branches covered)/(total number of branches)`

Se admiten los siguientes formatos de archivo de informes de cobertura de código:
+ JaCoCo XML
+ SimpleCov JSON¹
+ Clover XML
+ Cobertura XML
+ INFORMACIÓN DE LCOV

[¹ CodeBuild acepta informes de cobertura de código JSON generados por [simplecov, no por simplecov-json](https://github.com/simplecov-ruby/simplecov).](https://github.com/vicentllongo/simplecov-json)

## Crear un informe de cobertura de código
<a name="code-coverage-report-create"></a>

Para crear un informe de cobertura de código, ejecuta un proyecto de compilación que esté configurado con al menos un grupo de informes de cobertura de código en su archivo buildspec. CodeBuild interpretará los resultados de la cobertura de código y proporcionará un informe de cobertura de código para la ejecución. Se genera un nuevo informe de pruebas para cada compilación posterior que utilice el mismo archivo buildspec. 

**Para crear un informe de pruebas**

1. Cree un proyecto de compilación. Para obtener información, consulte [Creación de un proyecto de compilación en AWS CodeBuild](create-project.md).

1. Configure el archivo de especificación de la compilación del proyecto con información de informe de pruebas:

   1. Agregue una `reports:` sección y especifique el nombre del grupo de informes. CodeBuild crea un grupo de informes para usted con el nombre de su proyecto y el nombre que especificó en el formato `project-name` -`report-group-name-in-buildspec`. Si ya tiene un grupo de informes que desee utilizar, especifique su ARN. Si utiliza el nombre en lugar del ARN, CodeBuild crea un nuevo grupo de informes. Para obtener más información, consulte [Reports syntax in the buildspec file](build-spec-ref.md#reports-buildspec-file). 

   1. En el grupo de informes, especifique la ubicación de los archivos que contienen los resultados de la cobertura de código. Si utiliza más de un grupo de informes, especifique las ubicaciones de los archivos de resultados para cada uno de ellos. Cada vez que se ejecuta el proyecto de compilación, se crea un nuevo informe de cobertura de código. Para obtener más información, consulte [Especificar archivos de prueba](report-group-test-cases.md).

      Este es un ejemplo que genera un informe de cobertura de código para un archivo de resultados JaCoCo XML ubicado en test-`results/jacoco-coverage-report.xml`.

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

   1. En la sección `commands` de la secuencia `build` o `post_build`, especifique los comandos que ejecutan el análisis de cobertura del código. Para obtener más información, consulte [Especificar comandos de prueba](report-group-test-case-commands.md). 

1. Ejecute una compilación del proyecto de compilación. Para obtener más información, consulte [Ejecute AWS CodeBuild compilaciones manualmente](run-build.md).

1. Cuando la compilación se haya completado, elija la nueva ejecución de la compilación en **Build history (Historial de compilación)** en la página del proyecto. Seleccione **Informes** para ver el informe de cobertura de código. Para obtener más información, consulte [Consultar los informes de pruebas de una compilación](test-view-project-reports.md).

# Detección automática de informes en CodeBuild
<a name="report-auto-discover"></a>

CodeBuild usa la detección automática para buscar en todos los archivos de compilación una vez finalizada la fase de compilación; busca cualquier tipo de archivo de informe admitido y crea nuevos informes y grupos de informes de pruebas y cobertura de código de forma automática. Para cualquier tipo de informe detectado, CodeBuild crea nuevos grupos de informes con el siguiente patrón:

```
<project-name>-<report-file-format>-AutoDiscovered
```

**nota**  
Si los archivos de informe detectados tienen el mismo tipo de formato, se colocarán en el mismo informe o grupo de informes.

La detección automática de informes se configura mediante las variables de entorno del proyecto:

`CODEBUILD_CONFIG_AUTO_DISCOVER`  
Esta variable determina si la detección automática de informes está deshabilitada durante la compilación. De forma predeterminada, la detección automática de informes está habilitada para todas las compilaciones. Para deshabilitar esta característica, establezca `CODEBUILD_CONFIG_AUTO_DISCOVER` en `false`.

`CODEBUILD_CONFIG_AUTO_DISCOVER_DIR`  
(Opcional) Esta variable determina dónde busca CodeBuild los posibles archivos de informes. Tenga en cuenta que CodeBuild busca en `**/*` de forma predeterminada.

Estas variables de entorno pueden modificarse durante la fase de compilación. Por ejemplo, si solo quiere habilitar la detección automática de informes para las compilaciones en la ramificación de git `main`, puede comprobar dicha ramificación durante el proceso de compilación y establecer `CODEBUILD_CONFIG_AUTO_DISCOVER` como false si la compilación no está en la ramificación `main`. La detección automática de informes puede deshabilitarse mediante la consola o mediante variables de entorno del proyecto.

**Topics**
+ [Configuración de la detección automática de informes mediante la consola](#report-auto-discover-configure-console)
+ [Configuración de la detección automática de informes mediante variables de entorno del proyecto](#report-auto-discover-configure-variable)

## Configuración de la detección automática de informes mediante la consola
<a name="report-auto-discover-configure-console"></a>

Utilice el siguiente procedimiento para configurar la detección automática de informes mediante la consola.

**Para configurar la detección automática de informes mediante la consola**

1. Cree un proyecto de compilación o elija uno para editarlo. Para obtener información, consulte [Creación de un proyecto de compilación en AWS CodeBuild](create-project.md) o [Cambie la configuración del proyecto de compilación en AWS CodeBuild](change-project.md).

1. En **Entorno**, seleccione **Configuración adicional**.

1. Para deshabilitar la detección automática de informes, en **Detección automática de informes**, seleccione **Desactivar la detección automática de informes**.

1. (Opcional) En **Directorio de detección automática (opcional)**, especifique un patrón de directorio para que CodeBuild busque archivos con formato de informe compatibles. Tenga en cuenta que CodeBuild busca en `**/*` de forma predeterminada.

## Configuración de la detección automática de informes mediante variables de entorno del proyecto
<a name="report-auto-discover-configure-variable"></a>

Utilice el siguiente procedimiento para configurar la detección automática de informes mediante las variables de entorno del proyecto.

**Para configurar la detección automática de informes mediante variables de entorno del proyecto**

1. Cree un proyecto de compilación o elija uno para editarlo. Para obtener información, consulte [Creación de un proyecto de compilación en AWS CodeBuild](create-project.md) o [Cambie la configuración del proyecto de compilación en AWS CodeBuild](change-project.md).

1. En **Variables del entorno**, haga lo siguiente:

   1. Para deshabilitar la detección automática de informes, en **Nombre**, escriba **CODEBUILD\$1CONFIG\$1AUTO\$1DISCOVER** y en **Valor**, especifique **false**. Al hacerlo, se deshabilita la detección automática de informes.

   1. (Opcional) En **Nombre**, escriba **CODEBUILD\$1CONFIG\$1AUTO\$1DISCOVER\$1DIR** y en **Valor**, especifique el directorio en el que CodeBuild debe buscar los archivos con formato de informe compatibles. Por ejemplo, `output/*xml` busca archivos `.xml` en el directorio `output`.

# Grupos de informes
<a name="test-report-group"></a>

Un *grupo de informes* contiene informes de pruebas y especifica la configuración compartida. Utilice el archivo buildspec para especificar los casos de prueba que se van a ejecutar y los comandos para ejecutarlos cuando se compila. Para cada grupo de informes configurado en un proyecto de compilación, una ejecución del proyecto de compilación crea un informe de pruebas. Varias ejecuciones de un proyecto de compilación configurado con un grupo de informes crean varios informes de pruebas en ese grupo de informes, cada uno con resultados de los mismos casos de prueba especificados para dicho grupo de informes. 

 Los casos de prueba se especifican para un grupo de informes en el archivo buildspec de un proyecto de compilación. Puede especificar hasta cinco grupos de informes en un proyecto de compilación. Cuando ejecuta una compilación, se ejecutan todos los casos de prueba. Se crea un nuevo informe de pruebas con los resultados de cada caso de prueba especificado para un grupo de informes. Cada vez que se ejecuta una nueva compilación, se ejecutan los casos de prueba y se crea un nuevo informe de pruebas con los nuevos resultados de prueba. 

 Los grupos de informes se pueden utilizar en varios proyectos de compilación. Todos los informes de pruebas creados con un grupo de informes comparten la misma configuración, como su opción de exportación y permisos, incluso si los informes de prueba se crean utilizando diferentes proyectos de compilación. Los informes de pruebas creados con un grupo de informes en varios proyectos de compilación pueden contener los resultados de la ejecución de diferentes conjuntos de casos de prueba (un conjunto de casos de prueba para cada proyecto de compilación). Esto se debe a que puede especificar diferentes archivos de casos de prueba para el grupo de informes en el archivo buildspec de cada proyecto. También puede cambiar los archivos de casos de prueba de un grupo de informes en un proyecto de compilación si edita su archivo buildspec. Las ejecuciones de compilación posteriores crean nuevos informes de pruebas que contienen los resultados de los archivos de casos de prueba en el archivo buildspec actualizado. 

**Topics**
+ [Crear un grupo de informes](report-group-create.md)
+ [Nomenclatura de grupos de informes](test-report-group-naming.md)
+ [Uso compartido de grupos de informes](report-groups-sharing.md)
+ [Especificar archivos de prueba](report-group-test-cases.md)
+ [Especificar comandos de prueba](report-group-test-case-commands.md)
+ [Etiquetar un grupo de informes en AWS CodeBuild](how-to-tag-report-group.md)
+ [Actualizar un grupo de informes](report-group-export-settings.md)

# Crear un grupo de informes
<a name="report-group-create"></a>

 Puede usar la CodeBuild consola AWS CLI, el archivo Buildspec o un archivo buildspec para crear un grupo de informes. Su rol de IAM debe tener los permisos necesarios para crear un grupo de informes. Para obtener más información, consulte [Permisos de informes de prueba](test-permissions.md). 

**Topics**
+ [Crear un grupo de informes (buildspec)](#test-report-group-create-buildspec)
+ [Crear un grupo de informes (consola)](#test-report-group-create-console)
+ [Crear un grupo de informes (CLI)](#test-report-group-create-cli)
+ [Crear un grupo de informes (CloudFormation)](#test-report-group-create-cfn)

## Crear un grupo de informes (buildspec)
<a name="test-report-group-create-buildspec"></a>

Un grupo de informes creado con buildspec no exporta archivos de resultados de prueba sin procesar. Puede ver el grupo de informes y especificar las opciones de exportación. Para obtener más información, consulte [Actualizar un grupo de informes](report-group-export-settings.md). 

**Para crear un grupo de informes mediante un archivo buildspec**

1.  Elija un nombre de grupo de informes que no esté asociado a ningún grupo de informes de su cuenta. AWS 

1.  Configure la sección `reports` del archivo buildspec con este nombre. En este ejemplo, el nombre del grupo de informes es `new-report-group` y los casos de prueba de uso se crean con el JUnit marco: 

   ```
   reports:
    new-report-group: #surefire junit reports
      files:
        - '**/*'
      base-directory: 'surefire/target/surefire-reports'
   ```

   El nombre del grupo de informes también se puede especificar mediante variables de entorno en la especificación de compilación:

   ```
   version: 0.2
   env:
     variables:
       REPORT_GROUP_NAME: "new-report-group"
   phases:
     build:
       commands:
         - ...
   ...
   reports:
    $REPORT_GROUP_NAME:
      files:
        - '**/*'
      base-directory: 'surefire/target/surefire-reports'
   ```

    Para obtener más información, consulte [Especificar archivos de prueba](report-group-test-cases.md) y [Reports syntax in the buildspec file](build-spec-ref.md#reports-buildspec-file). 

1. En la sección `commands`, especifique el comando para ejecutar las pruebas. Para obtener más información, consulte [Especificar comandos de prueba](report-group-test-case-commands.md). 

1.  Ejecute la compilación. Cuando se completa la compilación, se crea un nuevo grupo de informes con un nombre que utiliza el formato `project-name-report-group-name`. Para obtener más información, consulte [Nomenclatura de grupos de informes](test-report-group-naming.md). 



## Crear un grupo de informes (consola)
<a name="test-report-group-create-console"></a>

Utilice el siguiente procedimiento para crear un grupo de informes con la Consola de administración de AWS.

**Para crear un grupo de informes**

1. Abre la AWS CodeBuild consola en [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1. En el panel de navegación, elija **Report groups (Grupos de informes)**. 

1. Elija **Create report group (Crear grupo de informes)**. 

1. En **Report group name (Nombre del grupo de informes)**, escriba un nombre para el grupo de informes. 

1. (Opcional) En el caso de las **etiquetas**, introduzca el nombre y el valor de las etiquetas que desee que utilicen AWS los servicios auxiliares. Utilice **Agregar fila** para añadir una etiqueta. Puede añadir hasta 50 etiquetas. 

1. Si desea cargar los datos sin procesar de los resultados del informe de pruebas a un bucket de Amazon S3: 

   1. Seleccione **Exportar a Amazon S3**. 

   1. En **S3 bucket name (Nombre de bucket de S3)**, escriba el nombre del bucket de S3. 

   1. (Opcional) Para el **propietario del bucket de S3**, introduzca el identificador de cuenta de AWS correspondiente a la cuenta propietaria del bucket de S3. Esto permite exportar los datos de los informes a un bucket de Amazon S3 que es propiedad de una cuenta distinta de la cuenta que ejecuta la compilación. 

   1. En **Path prefix (Prefijo de ruta)**, introduzca la ruta en el bucket de S3 donde desea cargar los resultados de prueba. 

   1. Seleccione **Compress test result data in a zip file (Comprimir los datos de los resultados de prueba en un archivo zip)** para comprimir los archivos de datos de resultados de prueba sin procesar. 

   1. Expanda **Additional configuration (Configuración adicional)** para mostrar las opciones de cifrado. Seleccione una de las siguientes opciones: 
      + **Clave AWS administrada predeterminada** para usar a Clave administrada de AWS para Amazon S3. Para obtener más información, consulte Gestión por [el cliente CMKs](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) en la *Guía del AWS Key Management Service usuario*. Esta es la opción de cifrado predeterminada.
      + **Seleccione una clave personalizada** para usar una clave administrada por el cliente creada y configurada por usted. Como **clave de cifrado de AWS KMS **, introduzca el ARN de la clave de cifrado. Su formato es el siguiente: ` arn:aws:kms:<region-id>: <aws-account-id>:key/<key-id> `. Para obtener más información, consulte [Creación de claves de KMS](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) en la *Guía del usuario de AWS Key Management Service *. 
      + **Disable artifact encryption (Desactivar el cifrado de artefactos)** para desactivar el cifrado. Puede elegir esta opción si desea compartir los resultados de sus pruebas o publicarlos en un sitio web estático. (Un sitio web dinámico puede ejecutar código para descifrar los resultados de prueba).

      Para obtener más información sobre el cifrado de datos en reposo, consulte [Cifrado de datos](security-encryption.md). 
**nota**  
El rol CodeBuild de servicio especificado en el proyecto se usa para obtener permisos de carga en el bucket de S3.

1. Elija **Create report group (Crear grupo de informes)**.

## Crear un grupo de informes (CLI)
<a name="test-report-group-create-cli"></a>

Utilice el siguiente procedimiento para crear un grupo de informes con la AWS CLI.

**Para crear un grupo de informes**

1. Cree un archivo denominado `CreateReportGroup.json`.

1. Según sus requisitos, copie uno de los siguientes fragmentos de código JSON en `CreateReportGroup.json`: 
   + Utilice el código JSON siguiente para especificar que su grupo de informes de pruebas exporta archivos de resultados de prueba sin procesar a un bucket de Amazon S3. 

     ```
     {
       "name": "<report-name>",
       "type": "TEST",
       "exportConfig": {
         "exportConfigType": "S3",
         "s3Destination": {
           "bucket": "<bucket-name>",
           "bucketOwner": "<bucket-owner>",
           "path": "<path>",
           "packaging": "NONE | ZIP",
           "encryptionDisabled": "false",
           "encryptionKey": "<your-key>"
         },
         "tags": [
           {
             "key": "tag-key",
             "value": "tag-value"
           }
         ]
       }
     }
     ```
     + *<bucket-name>*Sustitúyalo por el nombre de tu bucket de Amazon S3 y *<path>* por la ruta del bucket a la que deseas exportar los archivos. 
     + Si desea comprimir los archivos exportados, para `packaging`, especifique `ZIP`. De lo contrario, especifique `NONE`. 
     + `bucketOwner` es opcional y solo es obligatorio si el bucket de Amazon S3 es propiedad de una cuenta distinta de la cuenta que ejecuta la compilación.
     + Se utiliza `encryptionDisabled` para especificar si se deben cifrar los archivos exportados. Si cifra los archivos exportados, introduzca la clave administrada por el cliente. Para obtener más información, consulte [Actualizar un grupo de informes](report-group-export-settings.md).
   + Utilice el siguiente código JSON para especificar que el informe de pruebas no exporta archivos de prueba sin procesar: 

     ```
     {
       "name": "<report-name>",
       "type": "TEST",
       "exportConfig": {
         "exportConfigType": "NO_EXPORT"
       }
     }
     ```
**nota**  
El rol CodeBuild de servicio especificado en el proyecto se usa para obtener permisos de carga en el bucket de S3.

1. Use el siguiente comando: 

   ```
   aws codebuild create-report-group --cli-input-json file://CreateReportGroupInput.json
   ```

## Crear un grupo de informes (CloudFormation)
<a name="test-report-group-create-cfn"></a>

Siga las instrucciones a continuación para crear un grupo de informes con la plantilla de CloudFormation .

 **Para crear un grupo de informes con la plantilla de CloudFormation ** 

 Puede usar un archivo de CloudFormation plantilla para crear y aprovisionar un grupo de informes. Para obtener más información, consulte la [CloudFormation Guía del usuario de ](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html). 

 La siguiente plantilla CloudFormation YAML crea un grupo de informes que no exporta archivos de resultados de pruebas sin procesar. 

```
Resources:
  CodeBuildReportGroup:
    Type: AWS::CodeBuild::ReportGroup
    Properties:
      Name: my-report-group-name
      Type: TEST
      ExportConfig:
        ExportConfigType: NO_EXPORT
```

 La siguiente plantilla CloudFormation YAML crea un grupo de informes que exporta archivos de resultados de pruebas sin procesar a un bucket de Amazon S3. 

```
Resources:
  CodeBuildReportGroup:
    Type: AWS::CodeBuild::ReportGroup
    Properties:
      Name: my-report-group-name
      Type: TEST
      ExportConfig:
        ExportConfigType: S3
        S3Destination:
          Bucket: amzn-s3-demo-bucket
          Path: path-to-folder-for-exported-files
          Packaging: ZIP
          EncryptionKey: my-KMS-encryption-key
          EncryptionDisabled: false
```

**nota**  
El rol CodeBuild de servicio especificado en el proyecto se usa para obtener permisos de carga en el bucket de S3.

# Nomenclatura de grupos de informes
<a name="test-report-group-naming"></a>

 Cuando usa la consola AWS CLI o la AWS CodeBuild consola para crear un grupo de informes, especifica un nombre para el grupo de informes. Si utiliza el archivo de especificación de compilación para crear un nuevo grupo de informes, se le asigna un nombre con el formato `project-name-report-group-name-specified-in-buildspec`. Todos los informes creados mediante la ejecución de compilaciones de ese proyecto de compilación pertenecen al nuevo grupo de informes que tiene el nuevo nombre. 

 Si no desea CodeBuild crear un nuevo grupo de informes, especifique el ARN del grupo de informes en el archivo buildspec de un proyecto de compilación. Puede especificar el ARN de un grupo de informes en varios proyectos de compilación. Después de que se ejecute cada proyecto de compilación, el grupo de informes contiene informes de pruebas creados por cada proyecto de compilación. 

 Por ejemplo, si crea un grupo de informes con el nombre `my-report-group` y, a continuación, utiliza su nombre en dos proyectos de compilación diferentes denominados `my-project-1` y `my-project-2`, y crea una compilación de ambos proyectos, se crean dos nuevos grupos de informes. El resultado son tres grupos de informes con los siguientes nombres: 
+  `my-report-group`: no tiene informes de pruebas. 
+  `my-project-1-my-report-group`: contiene informes con resultados de pruebas ejecutadas por el proyecto de compilación denominado `my-project-1`. 
+  `my-project-2-my-report-group`: contiene informes con resultados de pruebas ejecutadas por el proyecto de compilación denominado `my-project-2`. 

 Si utiliza el ARN del grupo de informes denominado `my-report-group` en ambos proyectos y, a continuación, ejecuta compilaciones de cada proyecto, seguirá teniendo un grupo de informes (`my-report-group`). Ese grupo de informes contiene informes de pruebas con resultados de pruebas ejecutadas por ambos proyectos de compilación. 

 Si elige un nombre de grupo de informes que no pertenece a un grupo de informes de su cuenta de AWS y, a continuación, utiliza ese nombre para un grupo de informes en un archivo buildspec y ejecuta una compilación de su proyecto de compilación, se creará un nuevo grupo de informes. El formato del nombre del nuevo grupo de informes es `project-name-new-group-name`. Por ejemplo, si no hay un grupo de informes en su AWS cuenta con ese nombre `new-report-group` y lo especifica en un proyecto de compilación denominado`test-project`, una ejecución de compilación crea un nuevo grupo de informes con ese nombre. `test-project-new-report-group` 

# Uso compartido de grupos de informes
<a name="report-groups-sharing"></a>

El uso compartido de grupos de informes permite a varias AWS cuentas o usuarios ver un grupo de informes, sus informes no vencidos y los resultados de las pruebas de sus informes. En este modelo, la cuenta que posee el grupo de informes (propietario) comparte un grupo de informes con otras cuentas (consumidores). Un consumidor no puede editar un grupo de informes. Un informe caduca 30 días después de su creación.

**Topics**
+ [Uso compartido de un grupo de informes](#report-groups-sharing-share)
+ [Servicios relacionados](#report-groups-sharing-related)
+ [Acceso a los grupos de informes compartidos con usted](report-groups-sharing-access-prereqs.md)
+ [Cómo dejar de compartir un grupo de informes compartido](report-groups-sharing-unshare.md)
+ [Identificación de un grupo de informes compartido](report-groups-sharing-identify.md)
+ [Permisos de un grupo de informes compartido](report-groups-sharing-perms.md)

## Uso compartido de un grupo de informes
<a name="report-groups-sharing-share"></a>

 Cuando comparte un grupo de informes, al consumidor se le concede acceso de solo lectura al grupo de informes y a sus informes. El consumidor puede utilizar el AWS CLI para ver el grupo de informes, sus informes y los resultados de los casos de prueba de cada informe. El consumidor no puede: 
+  Vea un grupo de informes compartido o sus informes en la CodeBuild consola. 
+  Editar un grupo de informes compartido. 
+  Utilice el ARN del grupo de informes compartido en un proyecto para ejecutar un informe. Se produce un error en una compilación de proyecto que especifica un grupo de informes compartido. 

Puede usar la CodeBuild consola para agregar un grupo de informes a un recurso compartido existente. Si desea añadir el grupo de informes a un nuevo recurso compartido, primero debe crearlo en la [consola de AWS RAM](https://console.aws.amazon.com/ram).

Para compartir un grupo de informes con unidades organizativas o con toda la organización, debe permitir el uso compartido con AWS Organizations. Para obtener más información, consulte [Habilitar el uso compartido con AWS Organizations](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html) en la *Guía del usuario de AWS RAM *.

Puede usar la CodeBuild consola, la AWS RAM consola o AWS CLI compartir los grupos de informes de su propiedad.

**Requisito previo**  
Para compartir un grupo de informes, su AWS cuenta debe ser la propietaria del mismo. No puede compartir un grupo de informes que se haya compartido con usted.

**Para compartir un grupo de informes de tu propiedad (CodeBuild consola)**

1. Abre la AWS CodeBuild consola en [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1. En el panel de navegación, elija **Report groups (Grupos de informes)**.

1.  Elija el proyecto que desea compartir y, a continuación, elija **Share (Compartir)**. Para obtener más información, consulte [Crear un recurso compartido](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-create) en la *Guía del usuario de AWS RAM *. 

**Para compartir grupos de informes de tu propiedad (consola)AWS RAM**  
Consulte [Creación de un uso compartido de recursos](https://docs.aws.amazon.com/ram/latest/userguide/working-with-sharing.html#working-with-sharing-create) en la *Guía del usuario de AWS RAM *.

**Para compartir los grupos de informes de su propiedad (AWS RAM comando)**  
Utilice el comando [create-resource-share](https://docs.aws.amazon.com/cli/latest/reference/ram/create-resource-share.html).

 **Para compartir un grupo de informes de su propiedad (CodeBuild comando)** 

Utilice el comando [put-resource-policy](https://docs.aws.amazon.com/cli/latest/reference/codebuild/put-resource-policy.html):

1. Cree un archivo llamado `policy.json` y copie lo siguiente en él. 

------
#### [ JSON ]

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[{
        "Effect":"Allow",
        "Principal":{
          "AWS":"111122223333"
        },
        "Action":[
          "codebuild:BatchGetReportGroups",
          "codebuild:BatchGetReports",
          "codebuild:ListReportsForReportGroup",
          "codebuild:DescribeTestCases"],
        "Resource":"arn:aws:iam::*:role/Service*"
      }]
    }
   ```

------

1. Actualice `policy.json` con el ARN del grupo de informes y los identificadores para compartirlo. En el siguiente ejemplo, se concede acceso de solo lectura al grupo de informes con el ARN `arn:aws:codebuild:us-west-2:123456789012:report-group/my-report-group` a Alice y al usuario raíz de la AWS cuenta identificada con 123456789012. 

------
#### [ JSON ]

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[{
        "Effect":"Allow",
        "Principal":{
          "AWS": [
             "arn:aws:iam::123456789012:user/Alice",
             "123456789012"
           ]
        },
        "Action":[
          "codebuild:BatchGetReportGroups",
          "codebuild:BatchGetReports",
          "codebuild:ListReportsForReportGroup",
          "codebuild:DescribeTestCases"],
        "Resource":"arn:aws:codebuild:us-west-2:123456789012:report-group/my-report-group"
      }]
    }
   ```

------

1. Ejecute el comando siguiente. 

   ```
   aws codebuild put-resource-policy --resource-arn report-group-arn --policy file://policy.json
   ```

## Servicios relacionados
<a name="report-groups-sharing-related"></a>

El uso compartido de grupos de informes se integra con AWS Resource Access Manager (AWS RAM), un servicio que le permite compartir sus AWS recursos con cualquier cuenta o a través de ella. AWS AWS Organizations Con AWS RAM, puede compartir los recursos de su propiedad mediante la creación de un *recurso compartido* que especifique los recursos y los consumidores con los que compartirlos. Los consumidores pueden ser AWS cuentas individuales, unidades organizativas o toda una organización AWS Organizations. AWS Organizations

Para obtener más información, consulte la *Guía del usuario de [AWS RAM](https://docs.aws.amazon.com/ram/latest/userguide/)*.

# Acceso a los grupos de informes compartidos con usted
<a name="report-groups-sharing-access-prereqs"></a>

Para tener acceso a un grupo de informes compartido, el rol de IAM de un consumidor requiere el permiso `BatchGetReportGroups`. Puede adjuntar la siguiente política a su rol de IAM: 

```
{
    "Effect": "Allow",
    "Resource": [
        "*"
    ],
    "Action": [
        "codebuild:BatchGetReportGroups"
    ]
}
```

 Para obtener más información, consulte [Uso de políticas basadas en la identidad para AWS CodeBuild](auth-and-access-control-iam-identity-based-access-control.md). 

# Cómo dejar de compartir un grupo de informes compartido
<a name="report-groups-sharing-unshare"></a>

Solo el propietario puede obtener acceso a un grupo de informes no compartido, incluidos sus informes y los resultados de los casos de prueba. Si deja de compartir un grupo de informes, cualquier AWS cuenta o usuario con el que lo haya compartido anteriormente no podrá acceder al grupo de informes, a sus informes ni a los resultados de los casos de prueba incluidos en los informes.

Para dejar de compartir un grupo de informes compartido que posee, debe quitarlo del recurso compartido. Puedes usar la AWS RAM consola o AWS CLI hacer esto.

**Para dejar de compartir un grupo de informes compartido de tu propiedad (AWS RAM consola)**  
Consulte [Actualización de un recurso compartido](https://docs.aws.amazon.com/ram/latest/userguide/working-with-sharing.html#working-with-sharing-update) en la *Guía del usuario de AWS RAM *.

**Para dejar de compartir un grupo de informes compartido de su propiedad (comando)AWS RAM**  
Utilice el comando [disassociate-resource-share](https://docs.aws.amazon.com/cli/latest/reference/ram/disassociate-resource-share.html).

 **Para dejar de compartir un grupo de informes del que es propietario CodeBuild (comando)** 

Ejecute el [delete-resource-policy](https://docs.aws.amazon.com/cli/latest/reference/codebuild/delete-resource-policy.html)comando y especifique el ARN del grupo de informes que desea dejar de compartir:

```
aws codebuild delete-resource-policy --resource-arn report-group-arn
```

# Identificación de un grupo de informes compartido
<a name="report-groups-sharing-identify"></a>

Los propietarios y los consumidores pueden utilizarlos AWS CLI para identificar los grupos de informes compartidos. 

Para identificar y obtener información acerca de un grupo de informes compartido y sus informes, utilice los siguientes comandos: 
+  Para ver los grupos ARNs de informes que se han compartido con usted, ejecute`[list-shared-report-groups](https://docs.aws.amazon.com/cli/latest/reference/codebuild/list-shared-report-groups.html)`: 

  ```
  aws codebuild list-shared-report-groups
  ```
+  Para ver los informes ARNs de un grupo de informes, ejecute `[list-reports-for-report-group](https://docs.aws.amazon.com/cli/latest/reference/codebuild/list-reports-for-report-group.html)` con el grupo de informes ARN: 

  ```
  aws codebuild list-reports-for-report-group --report-group-arn report-group-arn
  ```
+  Para ver la información sobre los casos de prueba en un informe, ejecute `[describe-test-cases](https://docs.aws.amazon.com/cli/latest/reference/codebuild/describe-test-cases.html)` con el ARN de informe: 

  ```
  aws codebuild describe-test-cases --report-arn report-arn
  ```

   El resultado es similar al siguiente: 

  ```
  {
      "testCases": [
          {
              "status": "FAILED",
              "name": "Test case 1",
              "expired": 1575916770.0,
              "reportArn": "report-arn",
              "prefix": "Cucumber tests for agent",
              "message": "A test message",
              "durationInNanoSeconds": 1540540,
              "testRawDataPath": "path-to-output-report-files"
          },
          {
              "status": "SUCCEEDED",
              "name": "Test case 2",
              "expired": 1575916770.0,
              "reportArn": "report-arn",
              "prefix": "Cucumber tests for agent",
              "message": "A test message",
              "durationInNanoSeconds": 1540540,
              "testRawDataPath": "path-to-output-report-files"
          }
      ]
  }
  ```

# Permisos de un grupo de informes compartido
<a name="report-groups-sharing-perms"></a>

## Permisos de los propietarios
<a name="report-groups-perms-owner"></a>

Un propietario de un grupo de informes puede editarlo y especificarlo en un proyecto para ejecutar informes.

## Permisos de los consumidores
<a name="report-groups-perms-consumer"></a>

Un consumidor de grupo de informes puede ver un grupo de informes, sus informes y los resultados de los casos de prueba de sus informes. Un consumidor no puede editar un grupo de informes ni sus informes y no puede usarlo para crear informes.

# Especificar archivos de prueba
<a name="report-group-test-cases"></a>

 Los archivos de resultados de prueba y su ubicación para cada grupo de informes se especifican en la sección `reports` del archivo buildspec del proyecto de compilación. Para obtener más información, consulte [Reports syntax in the buildspec file](build-spec-ref.md#reports-buildspec-file). 

 A continuación se muestra una sección `reports` de ejemplo que especifica dos grupos de informes para un proyecto de compilación. Uno se especifica con su ARN y el otro con un nombre. La sección `files` especifica los archivos que contienen los resultados del caso de prueba. La sección `base-directory` opcional especifica el directorio donde se encuentran los archivos de casos de prueba. La sección `discard-paths` opcional especifica si se descartan las rutas de los archivos de resultados de prueba cargados en un bucket de Amazon S3. 

```
reports:
  arn:aws:codebuild:your-region:your-aws-account-id:report-group/report-group-name-1: #surefire junit reports
    files:
      - '**/*'
    base-directory: 'surefire/target/surefire-reports'
    discard-paths: false
    
  sampleReportGroup: #Cucumber reports from json plugin
    files:
      - 'cucumber-json/target/cucumber-json-report.json'
    file-format: CUCUMBERJSON #Type of the report, defaults to JUNITXML
```

# Especificar comandos de prueba
<a name="report-group-test-case-commands"></a>

 Los comandos que ejecutan los casos de prueba se especifican en la sección `commands` del archivo buildspec. Estos comandos ejecutan los casos de prueba especificados para sus grupos de informes en la sección `reports` de su archivo buildspec. A continuación se muestra una sección `commands` de ejemplo que incluye comandos para ejecutar las pruebas en archivos de prueba: 

```
commands:
    - echo Running tests for surefire junit
    - mvn test -f surefire/pom.xml -fn
    - echo
    - echo Running tests for cucumber with json plugin
    - mvn test -Dcucumber.options="--plugin json:target/cucumber-json-report.json" -f cucumber-json/pom.xml -fn
```

Para obtener más información, consulte [Sintaxis de buildspec](build-spec-ref.md#build-spec-ref-syntax).

# Etiquetar un grupo de informes en AWS CodeBuild
<a name="how-to-tag-report-group"></a>

Una *etiqueta* es una etiqueta de atributo personalizada que usted o AWS asigna a un AWS recurso. Cada AWS etiqueta consta de dos partes:
+ Una *clave de etiqueta* (por ejemplo, `CostCenter`, `Environment`, `Project` o `Secret`). Las claves de etiquetas distinguen entre mayúsculas y minúsculas.
+ Un campo opcional que se denomina *valor de etiqueta* (por ejemplo, `111122223333`, `Production` o el nombre de un equipo). Omitir el valor de etiqueta es lo mismo que utilizar una cadena vacía. Al igual que las claves de etiquetas, los valores de las etiquetas distinguen mayúsculas de minúsculas.

En conjunto, se conocen como pares clave-valor. Para conocer los límites del número de etiquetas que puede tener en un grupo de informes y las restricciones sobre las claves y valores de las etiquetas, consulte [Tags](limits.md#tag-limits).

Las etiquetas ayudan a identificar y organizar AWS los recursos. Muchos AWS servicios admiten el etiquetado, por lo que puede asignar la misma etiqueta a los recursos de diferentes servicios para indicar que los recursos están relacionados. Por ejemplo, puede asignar la misma etiqueta a un grupo de CodeBuild informes que a un bucket de Amazon S3. Para obtener más información sobre el uso de etiquetas, consulte el documento técnico [Prácticas recomendadas de etiquetado](https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). 

En CodeBuild, los recursos principales son el grupo de informes y el proyecto. Puede usar la CodeBuild consola, o AWS SDKs para agregar CodeBuild APIs, administrar y eliminar etiquetas de un grupo de informes. AWS CLI Además de utilizar etiquetas para identificar, organizar y realizar el seguimiento del grupo de informes, puede utilizarlas en las políticas de IAM para ayudar a controlar quién puede consultar el grupo de informes o interactuar con él. Para ver ejemplos de políticas de acceso basadas en etiquetas, consulte [Uso de etiquetas para controlar el acceso a AWS CodeBuild los recursos](auth-and-access-control-using-tags.md).

**Topics**
+ [Adición de etiquetas a un grupo de informes](how-to-tag-report-group-add.md)
+ [Consultar etiquetas de un grupo de informes](how-to-tag-report-group-list.md)
+ [Editar etiquetas de un grupo de informes](how-to-tag-report-group-update.md)
+ [Eliminación de etiquetas de un grupo de informes](how-to-tag-report-group-delete.md)

# Adición de etiquetas a un grupo de informes
<a name="how-to-tag-report-group-add"></a>

Agregar etiquetas a un grupo de informes puede ayudarle a identificar y organizar sus AWS recursos y a administrar el acceso a ellos. En primer lugar, agregue una o varias etiquetas (pares de clave-valor) a un grupo de informes. Tenga en cuenta que hay límites en el número de etiquetas que puede tener en un grupo de informes. Existen restricciones sobre los caracteres que se pueden utilizar en los campos de clave y valor. Para obtener más información, consulte [Tags](limits.md#tag-limits). Cuando tenga las etiquetas, puede crear políticas de IAM para administrar el acceso al grupo de informes en función de estas etiquetas. Puede usar la CodeBuild consola o la AWS CLI para agregar etiquetas a un grupo de informes. 

**importante**  
Agregar etiquetas a un grupo de informes puede afectar al acceso a ese grupo de informes. Antes de agregar una etiqueta a un grupo de informes, asegúrese de revisar las políticas de IAM que es posible que utilicen etiquetas para controlar el acceso a recursos como los grupos de informes. Para ver ejemplos de políticas de acceso basadas en etiquetas, consulte [Uso de etiquetas para controlar el acceso a AWS CodeBuild los recursos](auth-and-access-control-using-tags.md).

Para obtener más información sobre cómo agregar etiquetas a un grupo de informes al crearlo, consulte [Crear un grupo de informes (consola)](report-group-create.md#test-report-group-create-console).

**Topics**
+ [Agregar una etiqueta a un grupo de informes (consola)](#how-to-tag-report-group-add-console)
+ [Agregar una etiqueta a un grupo de informes (AWS CLI)](#how-to-tag-report-group-add-cli)

## Agregar una etiqueta a un grupo de informes (consola)
<a name="how-to-tag-report-group-add-console"></a>

Puede usar la CodeBuild consola para agregar una o más etiquetas a un grupo de CodeBuild informes. 

1. Abra la CodeBuild consola en [https://console.aws.amazon.com/codebuild/](https://console.aws.amazon.com/codebuild/).

1. En **Grupos de informes**, elija el nombre del grupo de informes al que desea agregar etiquetas.

1. En el panel de navegación, seleccione **Configuración**.

1. Si las etiquetas no se han agregado al grupo de informes, elija **Agregar etiqueta**. También puede elegir **Editar** y, a continuación, elegir **Agregar etiqueta**.

1. En **Clave**, escriba un nombre para la etiqueta. Puede agregar un valor opcional para la etiqueta en **Valor**. 

1. (Opcional) Para añadir otra etiqueta, vuelva a elegir **Add tag (Añadir etiqueta)**.

1. Cuando haya terminado de añadir etiquetas, seleccione **Submit (Enviar)**.

## Agregar una etiqueta a un grupo de informes (AWS CLI)
<a name="how-to-tag-report-group-add-cli"></a>

Para agregar una etiqueta a un grupo de informes al crearlo, consulte [Crear un grupo de informes (CLI)](report-group-create.md#test-report-group-create-cli). En `CreateReportGroup.json`, agregue sus etiquetas.

 Para agregar etiquetas a un grupo de informes existente, consulte [Actualizar un grupo de informes (CLI)](report-group-export-settings.md#update-report-group-cli) y agregue las etiquetas en `UpdateReportGroupInput.json`. 

En estos pasos, se presupone que ya ha instalado una versión reciente de la AWS CLI o que la ha actualizado a la versión actual. Para obtener más información, consulte [Instalación de la AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/installing.html).

# Consultar etiquetas de un grupo de informes
<a name="how-to-tag-report-group-list"></a>

Las etiquetas pueden ayudarle a identificar y organizar sus AWS recursos y a administrar el acceso a ellos. Para obtener más información sobre el uso de etiquetas, consulte el documento técnico [Prácticas recomendadas de etiquetado](https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). Para ver ejemplos de políticas de acceso basadas en etiquetas, consulte [Deny or allow actions on report groups based on resource tags](auth-and-access-control-using-tags.md#report-group-tag-policy-example).

## Consultar etiquetas de un grupo de informes (consola)
<a name="how-to-tag-report-group-list-console"></a>

Puede usar la CodeBuild consola para ver las etiquetas asociadas a un grupo de CodeBuild informes. 

1. Abra la CodeBuild consola en [https://console.aws.amazon.com/codebuild/](https://console.aws.amazon.com/codebuild/).

1. En **Grupos de informes**, elija el nombre del grupo de informes en el que desea consultar las etiquetas.

1. En el panel de navegación, seleccione **Configuración**.

## Consultar etiquetas de un grupo de informes (AWS CLI)
<a name="how-to-tag-report-group-list-cli"></a>

Siga estos pasos para usar el AWS CLI para ver las AWS etiquetas de un grupo de informes. Si no se han agregado etiquetas, la lista de etiquetas devueltas está vacía.

1.  Utilice la consola o el AWS CLI para localizar el ARN de su grupo de informes. Anótelo. 

------
#### [ AWS CLI ]

    Ejecute el comando siguiente. 

   ```
   aws list-report-groups
   ```

    Este comando devuelve información con formato JSON similar a la siguiente: 

   ```
   {
       "reportGroups": [
           "arn:aws:codebuild:region:123456789012:report-group/report-group-1",
           "arn:aws:codebuild:region:123456789012:report-group/report-group-2",
           "arn:aws:codebuild:region:123456789012:report-group/report-group-3"
       ]
   }
   ```

   El ARN del grupo de informes termina con su nombre, que puede utilizar para identificar el ARN del grupo de informes.

------
#### [ Console ]

   1. Abra la CodeBuild consola en. [https://console.aws.amazon.com/codebuild/](https://console.aws.amazon.com/codebuild/)

   1. En **Grupos de informes**, elija el nombre del grupo de informes con las etiquetas que desea consultar.

   1.  En **Configuración** localice el ARN del grupo de informes. 

------

1.  Ejecute el comando siguiente. Utilice el ARN del que tomó nota para el parámetro `--report-group-arns`. 

   ```
   aws codebuild batch-get-report-groups --report-group-arns arn:aws:codebuild:region:123456789012:report-group/report-group-name
   ```

    Si tiene éxito, este comando devuelve información con formato JSON que contiene una sección `tags` similar a la siguiente: 

   ```
   {
       ...                        
       "tags": {
           "Status": "Secret",
           "Project": "TestBuild"
       }
       ...
   }
   ```

# Editar etiquetas de un grupo de informes
<a name="how-to-tag-report-group-update"></a>

Puede cambiar el valor de una etiqueta asociada con un grupo de informes. También puede cambiar el nombre de la clave, lo que equivale a eliminar la etiqueta actual y agregar otra distinta con el nuevo nombre y el mismo valor que la otra clave. Tenga en cuenta que hay restricciones en los caracteres que puede utilizar en los campos de clave y valor. Para obtener más información, consulte [Tags](limits.md#tag-limits).

**importante**  
La edición de etiquetas de un grupo de informes puede afectar al acceso a ese grupo de informes. Antes de editar el nombre (clave) o valor de una etiqueta de un grupo de informes, asegúrese de revisar cualquier política de IAM que es posible que utilice la clave o el valor de una etiqueta para controlar el acceso a recursos como los grupos de informes. Para ver ejemplos de políticas de acceso basadas en etiquetas, consulte [Deny or allow actions on report groups based on resource tags](auth-and-access-control-using-tags.md#report-group-tag-policy-example).

## Editar una etiqueta de un grupo de informes (consola)
<a name="how-to-tag-report-group-update-console"></a>

Puede usar la CodeBuild consola para editar las etiquetas asociadas a un grupo de CodeBuild informes. 

1. Abra la CodeBuild consola en [https://console.aws.amazon.com/codebuild/](https://console.aws.amazon.com/codebuild/).

1. En **Grupos de informes**, elija el nombre del grupo de informes en el que desea editar las etiquetas.

1. En el panel de navegación, seleccione **Configuración**.

1. Elija **Edit (Edición de)**.

1. Realice una de las siguientes acciones:
   + Para cambiar la etiqueta, escriba un nuevo nombre en **Key (Clave)**. Cambiar el nombre de la etiqueta equivale a quitar una etiqueta y añadir otra nueva con el nuevo nombre de clave.
   + Para cambiar el valor de una etiqueta, escriba un nuevo valor. Si desea cambiar el valor por nada, elimine el valor actual y deje el campo en blanco.

1. Cuando haya terminado de editar las etiquetas, seleccione **Submit (Enviar)**.

## Editar etiquetas de un grupo de informes (AWS CLI)
<a name="how-to-tag-report-group-update-cli"></a>

 Para agregar, cambiar o eliminar etiquetas de un grupo de informes, consulte [Actualizar un grupo de informes (CLI)](report-group-export-settings.md#update-report-group-cli). Actualice las etiquetas en `UpdateReportGroupInput.json`. 

# Eliminación de etiquetas de un grupo de informes
<a name="how-to-tag-report-group-delete"></a>

Puede quitar una o varias etiquetas asociadas con un grupo de informes. La eliminación de una etiqueta no la elimina de otros AWS recursos que estén asociados a esa etiqueta.

**importante**  
Quitar etiquetas de un grupo de informes puede afectar al acceso a ese grupo de informes. Antes de quitar una etiqueta de un grupo de informes, asegúrese de revisar cualquier política de política de IAM que es posible que utilice la clave o el valor de una etiqueta para controlar el acceso a recursos como los grupos de informes. Para ver ejemplos de políticas de acceso basadas en etiquetas, consulte [Uso de etiquetas para controlar el acceso a AWS CodeBuild los recursos](auth-and-access-control-using-tags.md).

## Quitar una etiqueta de un grupo de informes (consola)
<a name="how-to-tag-report-group-delete-console"></a>

Puede usar la CodeBuild consola para eliminar la asociación entre una etiqueta y un grupo de CodeBuild informes. 

1. Abra la CodeBuild consola en [https://console.aws.amazon.com/codebuild/](https://console.aws.amazon.com/codebuild/).

1. En **Grupos de informes**, elija el nombre del grupo de informes en el que desea quitar etiquetas.

1. En el panel de navegación, seleccione **Configuración**.

1. Elija **Edit (Edición de)**.

1. Busque la etiqueta que desea eliminar y, a continuación, seleccione **Remove tag (Eliminar etiqueta)**.

1. Cuando haya terminado de eliminar las etiquetas, seleccione **Submit (Enviar)**.

## Quitar una etiqueta de un grupo de informes (AWS CLI)
<a name="how-to-tag-report-group-delete-cli"></a>

Siga estos pasos para usar el AWS CLI para eliminar una etiqueta de un grupo de CodeBuild informes. Al quitar una etiqueta no la elimina, sino que simplemente elimina la asociación entre la etiqueta y el grupo de informes. 

**nota**  
Si elimina un grupo de CodeBuild informes, todas las asociaciones de etiquetas se eliminan del grupo de informes eliminado. No es necesario quitar las etiquetas antes de eliminar un grupo de informes.

 Para eliminar una o varias etiquetas de un grupo de informes, consulte [Editar etiquetas de un grupo de informes (AWS CLI)](how-to-tag-report-group-update.md#how-to-tag-report-group-update-cli). Actualice la sección `tags` de los datos con formato JSON con una lista actualizada de etiquetas que no contenga las que desea eliminar. Si desea eliminar todas las etiquetas, actualice la sección `tags` para:

```
"tags: []"
```

# Actualizar un grupo de informes
<a name="report-group-export-settings"></a>

 Cuando actualice un grupo de informes, puede especificar información acerca de si se deben exportar los datos de resultados de prueba sin procesar a archivos en un bucket de Amazon S3. Si decide exportar a un bucket de S3, puede especificar lo siguiente para su grupo de informes: 
+ Si los archivos de resultados de prueba sin procesar están comprimidos en un archivo ZIP.
+ Si los archivos de resultados de prueba sin procesar están cifrados. Puede especificar el cifrado con una de las siguientes opciones:
  + Y Clave administrada de AWS para Amazon S3. 
  + Una clave administrada por el cliente creada y configurada por usted.

Para obtener más información, consulte [Cifrado de datos](security-encryption.md). 

Si utilizas el AWS CLI para actualizar un grupo de informes, también puedes actualizar o añadir etiquetas. Para obtener más información, consulte [Etiquetar un grupo de informes en AWS CodeBuildEtiquetar un grupo de informes](how-to-tag-report-group.md).

**nota**  
El rol CodeBuild de servicio especificado en el proyecto se usa para obtener permisos de carga en el bucket de S3.

**Topics**
+ [Actualizar un grupo de informes (consola)](#update-report-group-console)
+ [Actualizar un grupo de informes (CLI)](#update-report-group-cli)

## Actualizar un grupo de informes (consola)
<a name="update-report-group-console"></a>

Utilice el siguiente procedimiento para actualizar un grupo de informes con la Consola de administración de AWS.

**Para actualizar un grupo de informes**

1. Abre la AWS CodeBuild consola en [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1.  En el panel de navegación, elija **Report groups (Grupos de informes)**. 

1. Elija el grupo de informes que desea actualizar. 

1. Elija **Edit (Edición de)**.

1. Seleccione o desactive **Copia de seguridad en Amazon S3**. Si ha seleccionado esta opción, especifique la configuración de exportación:

   1. En **S3 bucket name (Nombre de bucket de S3)**, escriba el nombre del bucket de S3. 

   1. En **Path prefix (Prefijo de ruta)**, introduzca la ruta en el bucket de S3 donde desea cargar los resultados de prueba. 

   1. Seleccione **Compress test result data in a zip file (Comprimir los datos de los resultados de prueba en un archivo zip)** para comprimir los archivos de datos de resultados de prueba sin procesar. 

   1. Expanda **Additional configuration (Configuración adicional)** para mostrar las opciones de cifrado. Seleccione una de las siguientes opciones: 
      + **Clave AWS administrada predeterminada** para usar a Clave administrada de AWS para Amazon S3. Para obtener más información, consulte Gestión por [el cliente CMKs](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) en la *Guía del AWS Key Management Service usuario*. Esta es la opción de cifrado predeterminada.
      + **Seleccione una clave personalizada** para usar una clave administrada por el cliente creada y configurada por usted. Como **clave de cifrado de AWS KMS **, introduzca el ARN de la clave de cifrado. Su formato es el siguiente: ` arn:aws:kms:<region-id>: <aws-account-id>:key/<key-id> `. Para obtener más información, consulte [Creación de claves de KMS](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) en la *Guía del usuario de AWS Key Management Service *. 
      + **Disable artifact encryption (Desactivar el cifrado de artefactos)** para desactivar el cifrado. Puede elegir esta opción si desea compartir los resultados de sus pruebas o publicarlos en un sitio web estático. (Un sitio web dinámico puede ejecutar código para descifrar los resultados de prueba).

## Actualizar un grupo de informes (CLI)
<a name="update-report-group-cli"></a>

Utilice el siguiente procedimiento para actualizar un grupo de informes con la AWS CLI.

**Para actualizar un grupo de informes**

1. Cree un archivo denominado `UpdateReportGroupInput.json`.

1. Copie lo siguiente en `UpdateReportGroupInput.json`: 

   ```
   {
       "arn": "",
       "exportConfig": {
           "exportConfigType": "S3",
           "s3Destination": {
               "bucket": "bucket-name", 
               "path": "path", 
               "packaging": "NONE | ZIP",
               "encryptionDisabled": "false",
               "encryptionKey": "your-key"
            }
        },
        "tags": [
           {
               "key": "tag-key",
               "value": "tag-value"
           }
        ]
   }
   ```

1. Escriba el ARN de su grupo de informes en la línea de `arn` (por ejemplo, `"arn":"arn:aws:codebuild:region:123456789012:report-group/report-group-1")`. 

1. Aplique a `UpdateReportGroupInput.json` las actualizaciones que desee implementar al grupo de informes. 
   + Si desea actualizar el grupo de informes para exportar archivos de resultados de prueba sin procesar a un bucket de S3, actualice la sección `exportConfig`. Reemplace `bucket-name` por el nombre del bucket de S3 y `path` por la ruta de acceso del bucket de S3 a la que desea exportar los archivos. Si desea comprimir los archivos exportados, para `packaging`, especifique `ZIP`. De lo contrario, especifique `NONE`. Se utiliza `encryptionDisabled` para especificar si se deben cifrar los archivos exportados. Si cifra los archivos exportados, introduzca la clave administrada por el cliente.
   + Si desea actualizar su grupo de informes para que no exporte archivos de resultados de prueba sin procesar a un bucket de S3, actualice la sección `exportConfig` con el siguiente JSON: 

     ```
     { 
       "exportConfig": {
           "exportConfigType": "NO_EXPORT"
       }
     }
     ```
   + Si desea actualizar las etiquetas del grupo de informes, actualice la sección `tags`. Puede cambiar, agregar o quitar etiquetas. Si desea quitar todas las etiquetas, actualícelo con el siguiente JSON: 

     ```
     "tags": []
     ```

1.  Use el siguiente comando: 

   ```
   aws codebuild update-report-group \
   --cli-input-json file://UpdateReportGroupInput.json
   ```

# Marcos de pruebas
<a name="test-framework-reporting"></a>

En los temas de esta sección se muestra cómo configurar los informes de pruebas AWS CodeBuild para varios marcos de prueba.

**Topics**
+ [Configurar generación de informes de pruebas con Jasmine](test-report-jasmine.md)
+ [Configurar generación de informes de pruebas con Jest](test-report-jest.md)
+ [Configurar generación de informes de pruebas con pytest](test-report-pytest.md)
+ [Configurar generación de informes de pruebas con RSpec](test-report-rspec.md)

# Configurar generación de informes de pruebas con Jasmine
<a name="test-report-jasmine"></a>

El siguiente procedimiento muestra cómo configurar generación de informes de prueba en AWS CodeBuild con el [marco de pruebas JasmineBDD](http://jasmine.github.io/). 

El procedimiento requiere los siguientes requisitos previos:
+ Debe tener un proyecto de CodeBuild existente.
+ Su proyecto es un proyecto Node.js que está configurado para usar el marco de pruebas de Jasmine.

Agregue el paquete [https://www.npmjs.com/package/jasmine-reporters](https://www.npmjs.com/package/jasmine-reporters) a la sección `devDependencies` del archivo `package.json` de su proyecto. Este paquete tiene una colección de clases de generador de informes de JavaScript que se pueden usar con Jasmine. 

```
npm install --save-dev jasmine-reporters
```

Si todavía no está presente, agregue el script `test` al archivo `package.json` de su proyecto. El script `test` asegura que se llame a Jasmine cuando se ejecuta **npm test**.

```
{
  "scripts": {
    "test": "npx jasmine"
  }
}
```

CodeBuild es compatible con los siguientes generadores de informes de pruebas de Jasmine:

**JUnitXmlReporter**  
Se utiliza para generar informes en el formato `JunitXml`.

**NUnitXmlReporter**  
Se utiliza para generar informes en el formato `NunitXml`.

Un proyecto Node.js con Jasmine tendrá, de forma predeterminada, un subdirectorio `spec`, que contiene los scripts de configuración y prueba de Jasmine. 

Para configurar Jasmine para generar informes en el formato `JunitXML`, cree una instancia para el generador de informes `JUnitXmlReporter` agregando el siguiente código a las pruebas. 

```
var reporters = require('jasmine-reporters');

var junitReporter = new reporters.JUnitXmlReporter({
  savePath: <test report directory>,
  filePrefix: <report filename>,
  consolidateAll: true
});

jasmine.getEnv().addReporter(junitReporter);
```

Para configurar Jasmine para generar informes en el formato `NunitXML`, cree una instancia para el generador de informes `NUnitXmlReporter` agregando el siguiente código a las pruebas. 

```
var reporters = require('jasmine-reporters');

var nunitReporter = new reporters.NUnitXmlReporter({
  savePath: <test report directory>,
  filePrefix: <report filename>,
  consolidateAll: true
});

jasmine.getEnv().addReporter(nunitReporter)
```

Los informes de pruebas se exportan al archivo especificado por *<directorio de informes de pruebas>*/*<nombre de archivo de pruebas>*.

En su archivo `buildspec.yml`, agregue y actualice las siguientes secciones.

```
version: 0.2

phases:
  pre_build:
    commands:
      - npm install
  build:
    commands:
      - npm build
      - npm test

reports:
  jasmine_reports:
    files:
      - <report filename>
    file-format: JUNITXML
    base-directory: <test report directory>
```

Si utiliza el formato de informe `NunitXml`, cambie el valor `file-format` al siguiente.

```
    file-format: NUNITXML
```

# Configurar generación de informes de pruebas con Jest
<a name="test-report-jest"></a>

El siguiente procedimiento muestra cómo configurar generación de informes de pruebas en AWS CodeBuild con el [marco de pruebas de Jest](https://jestjs.io/). 

El procedimiento requiere los siguientes requisitos previos:
+ Debe tener un proyecto de CodeBuild existente.
+ Su proyecto es un proyecto Node.js que está configurado para usar el marco de pruebas de Jest.

Agregue el paquete [https://www.npmjs.com/package/jest-junit](https://www.npmjs.com/package/jest-junit) a la sección `devDependencies` del archivo `package.json` de su proyecto. CodeBuild utiliza este paquete para generar informes en el formato `JunitXml`.

```
npm install --save-dev jest-junit
```

Si todavía no está presente, agregue el script `test` al archivo `package.json` de su proyecto. El script `test` asegura que se llama a Jest al ejecutar **npm test**.

```
{
  "scripts": {
    "test": "jest"
  }
}
```

Configure Jest para usar el generador de informes `JunitXml` agregando lo siguiente al archivo de configuración de Jest. Si su proyecto no tiene un archivo de configuración de Jest, cree un archivo denominado `jest.config.js` en la raíz del proyecto y agregue lo siguiente. Los informes de pruebas se exportan al archivo especificado por *<directorio de informes de pruebas>*/*<nombre de archivo de pruebas>*.

```
module.exports = {
  reporters: [
    'default',
    [ 'jest-junit', {
      outputDirectory: <test report directory>,
      outputName: <report filename>,
    } ]
  ]
};
```

En su archivo `buildspec.yml`, agregue y actualice las siguientes secciones.

```
version: 0.2

phases:
  pre_build:
    commands:
      - npm install
  build:
    commands:
      - npm build
      - npm test

reports:
  jest_reports:
    files:
      - <report filename>
    file-format: JUNITXML
    base-directory: <test report directory>
```

# Configurar generación de informes de pruebas con pytest
<a name="test-report-pytest"></a>

El siguiente procedimiento muestra cómo configurar informes de pruebas en AWS CodeBuild con el [marco de pruebas de pytest](https://docs.pytest.org/). 

El procedimiento requiere los siguientes requisitos previos:
+ Debe tener un proyecto de CodeBuild existente.
+ Su proyecto es un proyecto de Python que está configurado para usar el marco de pruebas de pytest.

Agregue la siguiente entrada a la fase `build` o `post_build` del archivo `buildspec.yml`. Este código detecta automáticamente las pruebas en el directorio actual y exporta los informes de pruebas al archivo especificado por *<directorio de informes de pruebas>*/*<nombre de archivo de informes>*. El informe utiliza el formato `JunitXml`.

```
      - python -m pytest --junitxml=<test report directory>/<report filename>
```

En su archivo `buildspec.yml`, agregue y actualice las siguientes secciones.

```
version: 0.2

phases:
  install:
    runtime-versions:
      python: 3.7
    commands:
      - pip3 install pytest
  build:
    commands:
      - python -m pytest --junitxml=<test report directory>/<report filename>

reports:
  pytest_reports:
    files:
      - <report filename>
    base-directory: <test report directory>
    file-format: JUNITXML
```

# Configurar generación de informes de pruebas con RSpec
<a name="test-report-rspec"></a>

El siguiente procedimiento muestra cómo configurar generación de informes de pruebas en AWS CodeBuild con el [marco de pruebas de RSpec](https://rspec.info/). 

El procedimiento requiere los siguientes requisitos previos:
+ Debe tener un proyecto de CodeBuild existente.
+ Su proyecto es un proyecto Ruby que está configurado para usar el marco de pruebas de RSpec.

Agregue y actualice lo siguiente en su archivo `buildspec.yml`. Este código ejecuta las pruebas en el directorio *<directorio de fuente de pruebas>* y exporta los informes de pruebas al archivo especificado por *<directorio de informes de pruebas>*/*<nombre de archivo del informe>*. El informe utiliza el formato `JunitXml`.

```
version: 0.2

phases:
  install:
    runtime-versions:
      ruby: 2.6
  pre_build:
    commands:
      - gem install rspec
      - gem install rspec_junit_formatter
  build:
    commands:
      - rspec <test source directory>/* --format RspecJunitFormatter --out <test report directory>/<report filename>
reports:
    rspec_reports:
        files:
            - <report filename>
        base-directory: <test report directory>
        file-format: JUNITXML
```

# Consultar los informes de pruebas
<a name="test-view-reports"></a>

 Puede ver detalles sobre un informe de pruebas, como información sobre sus casos de prueba, los números de realizaciones correctas e incorrectas, y el tiempo que tardó en ejecutarse. Puede ver los informes de las pruebas agrupados por compilación, ejecución, grupo de informes o su AWS cuenta. Elija un informe de pruebas en la consola para ver los detalles y los resultados de sus casos de prueba. 

 Puede ver los informes de pruebas que no están caducados. Los informes de pruebas caducan 30 días después de su creación. No puede ver un informe caducado en CodeBuild. 

**Topics**
+ [Consultar los informes de pruebas de una compilación](test-view-project-reports.md)
+ [Consultar los informes de pruebas de un grupo de informes](test-view-report-group-reports.md)
+ [Consulta los informes de las pruebas en tu cuenta AWS](test-view-account-reports.md)

# Consultar los informes de pruebas de una compilación
<a name="test-view-project-reports"></a>

**Para ver los informes de pruebas de una compilación**

1. Abre la AWS CodeBuild consola en [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1.  Localice la compilación que desea ver. Si conoce el proyecto que ejecutó la compilación que creó el informe de pruebas: 

   1.  En el panel de navegación, elija **Build projects (Proyectos de compilación)** y, a continuación, elija el proyecto con la compilación que ejecutó el informe de pruebas que desea ver. 

   1.  Elija **Build history (Historial de compilación)** y, a continuación, elija la compilación ejecutada que creó los informes que desea ver. 

    También puede localizar la compilación en el historial de compilación de su cuenta de AWS : 

   1.  En el panel de navegación, elija **Build history (Historial de compilación)** y, a continuación, elija la compilación que creó los informes de pruebas que desea ver. 

1. En la página de compilación, elija **Reports (Informes)** y, a continuación, elija un informe de pruebas para ver sus detalles.

# Consultar los informes de pruebas de un grupo de informes
<a name="test-view-report-group-reports"></a>

**Para ver informes de pruebas de un grupo de informes**

1. [Abre la AWS CodeBuild consola en codebuild/home. https://console.aws.amazon.com/codesuite/](https://console.aws.amazon.com/codesuite/codebuild/home)

1.  En el panel de navegación, elija **Report groups (Grupos de informes)**.

1. Elija el grupo de informes que contiene los informes de pruebas que desea ver. 

1.  Elija un informe de pruebas para ver sus detalles. 

# Consulta los informes de las pruebas en tu cuenta AWS
<a name="test-view-account-reports"></a>



**Para ver los informes de las pruebas en tu AWS cuenta**

1. Abre la AWS CodeBuild consola en [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1.  En el panel de navegación, elija **Report history (Historial de informes)**. 

1.  Elija un informe de pruebas para ver sus detalles. 

# Permisos de informes de prueba
<a name="test-permissions"></a>

 En este tema se describe información importante acerca de los permisos relacionados con los informes de pruebas. 

**Topics**
+ [Rol de IAM para informes de pruebas](#test-permissions-required)
+ [Permisos para las operaciones de informes de pruebas](#test-permissions-related-to-reporting)
+ [Ejemplos de permisos de informes de pruebas](#test-permissions-examples)

## Rol de IAM para informes de pruebas
<a name="test-permissions-required"></a>

Para ejecutar un informe de pruebas y actualizar un proyecto para incluir informes de pruebas, el rol de IAM requiere los siguientes permisos. Estos permisos se incluyen en las políticas gestionadas predefinidas AWS . Si desea añadir un informe de pruebas a un proyecto de compilación existente, debe añadir estos permisos.
+ `CreateReportGroup` 
+ `CreateReport` 
+ `UpdateReport` 
+ `BatchPutTestCases` 

Para ejecutar un informe de cobertura de código, su rol de IAM también debe incluir el permiso `BatchPutCodeCoverages`.

**nota**  
`BatchPutTestCases`, `CreateReport`, `UpdateReport` y `BatchPutCodeCoverages` no son permisos públicos. No puede llamar al AWS CLI comando o método SDK correspondiente para obtener estos permisos. 

Para asegurarse de que tiene estos permisos, puede asociar la siguiente política a su rol de IAM: 

```
{
    "Effect": "Allow",
    "Resource": [
        "*"
    ],
    "Action": [
        "codebuild:CreateReportGroup",
        "codebuild:CreateReport",
        "codebuild:UpdateReport",
        "codebuild:BatchPutTestCases",
        "codebuild:BatchPutCodeCoverages"
    ]
}
```

Le recomendamos que restrinja esta política únicamente a los grupos de informes que debe utilizar. Lo siguiente restringe los permisos solo a los grupos de informes que incluyen los dos ARNs en la política: 

```
{
    "Effect": "Allow",
    "Resource": [
        "arn:aws:codebuild:your-region:your-aws-account-id:report-group/report-group-name-1",
        "arn:aws:codebuild:your-region:your-aws-account-id:report-group/report-group-name-2"
    ],
    "Action": [
        "codebuild:CreateReportGroup",
        "codebuild:CreateReport",
        "codebuild:UpdateReport",
        "codebuild:BatchPutTestCases",
        "codebuild:BatchPutCodeCoverages"
    ]
}
```

Lo siguiente restringe los permisos solo a los grupos de informes creados por la ejecución de compilaciones de un proyecto llamado `my-project`: 

```
{
    "Effect": "Allow",
    "Resource": [
        "arn:aws:codebuild:your-region:your-aws-account-id:report-group/my-project-*"
    ],
    "Action": [
        "codebuild:CreateReportGroup",
        "codebuild:CreateReport",
        "codebuild:UpdateReport",
        "codebuild:BatchPutTestCases",
        "codebuild:BatchPutCodeCoverages"
    ]
}
```

**nota**  
El rol CodeBuild de servicio especificado en el proyecto se usa para obtener permisos de carga en el bucket de S3.

## Permisos para las operaciones de informes de pruebas
<a name="test-permissions-related-to-reporting"></a>

 Puede especificar los permisos para las siguientes operaciones de la CodeBuild API de informes de pruebas: 
+  `BatchGetReportGroups` 
+  `BatchGetReports` 
+  `CreateReportGroup` 
+  `DeleteReportGroup` 
+  `DeleteReport` 
+  `DescribeTestCases` 
+  `ListReportGroups` 
+  `ListReports` 
+  `ListReportsForReportGroup` 
+  `UpdateReportGroup` 

Para obtener más información, consulte [AWS CodeBuild referencia de permisos](auth-and-access-control-permissions-reference.md).

## Ejemplos de permisos de informes de pruebas
<a name="test-permissions-examples"></a>

 Para obtener información acerca de las directivas de ejemplo relacionadas con los informes de pruebas, consulte lo siguiente: 
+  [Permitir que un usuario pueda cambiar un grupo de informes](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-change-report-group) 
+  [Permitir que un usuario pueda crear un grupo de informes](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-create-report-group) 
+  [Permitir que un usuario pueda eliminar un informe](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-delete-report) 
+  [Permitir que un usuario pueda eliminar un grupo de informes](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-delete-report-group) 
+  [Permitir que un usuario obtenga información sobre los grupos de informes](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-get-information-about-report-group) 
+  [Permitir que un usuario obtenga información sobre los informes](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-get-information-about-reports) 
+  [Permitir que a un usuario pueda obtener una lista de grupos de informes](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-get-list-of-report-groups) 
+  [Permitir que un usuario pueda obtener una lista de informes](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-get-list-of-reports) 
+  [Permitir que un usuario pueda obtener una lista con los informes de un grupo de informes](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-get-list-of-reports-for-report-group) 
+  [Permitir que un usuario pueda obtener una lista con los casos de prueba de un informe](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-get-list-of-test-cases-for-report) 

# Estados de un informe de pruebas
<a name="test-report"></a>

El estado de un informe de pruebas puede ser uno de los siguientes:
+ `GENERATING`: la ejecución de los casos de prueba todavía está en curso.
+ `DELETING`: se está eliminando el informe de pruebas. Cuando se elimina un informe de pruebas, también se eliminan sus casos de prueba. Los archivos de datos de resultados de pruebas sin procesar exportados a un bucket de S3 no se eliminan.
+ `INCOMPLETE`: el informe de pruebas no se ha completado. Este estado se puede devolver por uno de los siguientes motivos:
  + Un problema con la configuración del grupo de informes que especifica los casos de prueba de este informe. Por ejemplo, la ruta de los casos de prueba en el grupo de informes del archivo buildspec puede ser incorrecta.
  + El usuario de IAM que ha ejecutado la compilación no tiene permisos para ejecutar pruebas. Para obtener más información, consulte [Permisos de informes de prueba](test-permissions.md).
  + La compilación no se ha completado debido a un error que no está relacionado con las pruebas.
+ `SUCCEEDED`: todos los casos de prueba se realizaron correctamente.
+ `FAILED`: algunos de los casos de prueba no se realizaron correctamente.

Cada caso de prueba devuelve un estado. El estado de un caso de prueba puede ser uno de los siguientes:
+ `SUCCEEDED`: se ha superado el caso de prueba.
+ `FAILED`: se ha producido un error en el caso de prueba.
+ `ERROR`: el caso de prueba ha producido un error inesperado.
+ `SKIPPED`: el caso de prueba no se ha ejecutado.
+ `UNKNOWN`: el caso de prueba ha devuelto un estado distinto de `SUCCEEDED`, `FAILED`, `ERROR` o `SKIPPED`.

Un informe de pruebas puede tener un máximo de 500 resultados de casos de prueba. Si se ejecutan más de 500 casos de prueba, CodeBuild prioriza las pruebas con el estado `FAILED` y trunca los resultados de los casos de prueba. 