Informe de ejemplo de pruebas fallidas

Servicios de Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022

Puede crear un informe que muestre las pruebas con errores, de forma similar a la siguiente imagen, para las ejecuciones de canalización que incluyen tareas de prueba. Para obtener información sobre cómo agregar tests a una canalización, consulte recursos de tareas de prueba más adelante en este artículo.

Captura de pantalla del informe de la tabla de pruebas fallidas.

Use las consultas de este artículo para generar los informes siguientes:

  • Pruebas fallidas para el flujo de trabajo de compilación
  • Pruebas fallidas para el flujo de trabajo de lanzamiento
  • Pruebas con errores para una rama determinada
  • Pruebas con errores para un archivo de prueba determinado
  • Pruebas con errores para un propietario de prueba determinado

Nota:

Las consultas de ejemplo en este artículo requieren la versión v3.0-preview o posterior de la fuente OData de Analytics. Comparta sus comentarios.

Categoría Requisitos
Niveles de acceso - Miembro del proyecto.
- Al menos acceso básico .
Permisos De forma predeterminada, los miembros del proyecto tienen permiso para consultar Analytics y crear vistas. Para obtener más información sobre otros requisitos previos relacionados con las actividades de habilitación de servicios y características y seguimiento de datos generales, consulte Permisos y requisitos previos para acceder a Analytics.

Nota:

En este artículo se da por hecho que has leído Información general de informes de ejemplo mediante consultas de OData y tienes un conocimiento básico de Power BI.

Consultas de ejemplo

Use las siguientes consultas del TestResultsDaily conjunto de entidades para crear informes de prueba con errores de canalización diferentes pero similares. Este conjunto de entidades proporciona un resumen diario de instantáneas de ejecuciones de TestResult, organizadas por prueba.

Nota:

Para buscar las propiedades disponibles para el filtrado o los informes, consulte la referencia de Metadata para Test Plans Analytics y Metadata para Azure Pipelines. Puede filtrar las consultas o devolver propiedades mediante cualquier valor Property definido en un EntityType, o cualquier valor NavigationPropertyBinding Path enumerado para un EntitySet. Cada EntitySet se asigna a EntityType, que describe el tipo de dato de cada propiedad.

Pruebas fallidas para un flujo de trabajo de compilación

Utiliza las siguientes consultas para ver las pruebas fallidas de una canalización de flujo de trabajo de compilación.

Copie y pegue la siguiente consulta Power BI directamente en la ventana Get Data>Blank Query. Para obtener más información, consulte Información general sobre informes de ejemplo mediante consultas de OData.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v4.0-preview/TestResultsDaily?
$apply=filter("
                &"Pipeline/PipelineName eq '{pipelineName}' "
                &"and Date/Date ge {startdate} "
        &"and Workflow eq 'Build' "
        &") "
            &"/groupby( "
                &"(TestSK, Test/TestName), "
                &"aggregate( "
            &"ResultCount with sum as TotalCount, "
                &"ResultPassCount with sum as PassedCount, "
            &"ResultFailCount with sum as FailedCount, "
        &"ResultNotExecutedCount with sum as NotExecutedCount, "
    &"ResultNotImpactedCount with sum as NotImpactedCount, "
    &"ResultFlakyCount with sum as FlakyCount)) "
    &"/filter(FailedCount gt 0) "
    &"/compute( "
    &"iif(TotalCount gt NotExecutedCount, ((PassedCount add NotImpactedCount) div cast(TotalCount sub NotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Pruebas fallidas para el flujo de trabajo de lanzamiento

Utilice las siguientes consultas para ver las pruebas fallidas de una canalización de 'Release'.

Copie y pegue la siguiente consulta Power BI directamente en la ventana Get Data>Blank Query. Para obtener más información, consulte Información general sobre informes de ejemplo mediante consultas de OData.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v4.0-preview/TestResultsDaily?
$apply=filter("
                &"Pipeline/PipelineName eq '{pipelineName}' "
                &"and Date/Date ge {startdate} "
        &"and Workflow eq 'Release' "
        &") "
        &"/groupby((TestSK, Test/TestName), "
        &"aggregate( "
            &"ResultCount with sum as TotalCount, "
                &"ResultPassCount with sum as PassedCount, "
                &"ResultFailCount with sum as FailedCount, "
            &"ResultNotExecutedCount with sum as NotExecutedCount, "
                &"ResultNotImpactedCount with sum as NotImpactedCount, "
            &"ResultFlakyCount with sum as FlakyCount)) "
        &"/filter(FailedCount gt 0) "
    &"/compute( "
    &"iif(TotalCount gt NotExecutedCount, ((PassedCount add NotImpactedCount) div cast(TotalCount sub NotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Pruebas con errores filtradas por rama

Para ver las pruebas con errores de una canalización para una rama determinada, use las siguientes consultas. Para crear el informe, lleve a cabo los siguientes pasos adicionales junto con lo que se especifica más adelante en este artículo.

  • Expanda Branch en Branch.BranchName.
  • Seleccione el cortador de visualización de Power BI y agregue el campo Branch.BranchName al Campo de la segmentación.
  • Seleccione el nombre de la rama en el segmentador para el cual necesita ver el resumen de resultados.

Para obtener más información sobre el uso de los filtros, consulte Slicers en Power BI.

Copie y pegue la siguiente consulta Power BI directamente en la ventana Get Data>Blank Query. Para obtener más información, consulte Información general sobre informes de ejemplo mediante consultas de OData.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v4.0-preview/TestResultsDaily?
$apply=filter("
                &"Pipeline/PipelineName eq '{pipelineName}' "
                &"and Date/Date ge {startdate} "
        &"and Workflow eq 'Build') "
        &"/groupby((TestSK, Test/TestName, Branch/BranchName), "
            &"aggregate( "
                &"ResultCount with sum as TotalCount, "
                &"ResultPassCount with sum as PassedCount, "
            &"ResultFailCount with sum as FailedCount, "
                &"ResultNotExecutedCount with sum as NotExecutedCount, "
            &"ResultNotImpactedCount with sum as NotImpactedCount, "
        &"ResultFlakyCount with sum as FlakyCount)) "
    &"/filter(FailedCount gt 0) "
    &"/compute( "
    &"iif(TotalCount gt NotExecutedCount, ((PassedCount add NotImpactedCount) div cast(TotalCount sub NotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Pruebas con errores filtradas por el archivo de prueba

Para ver las pruebas con errores de una canalización y un archivo de prueba determinado, use las siguientes consultas. Para crear el informe, lleve a cabo los siguientes pasos adicionales junto con lo que se define más adelante en este artículo.

  • Expanda Test en Test.ContainerName.
  • Seleccione Slicer de visualización de Power BI y agregue el campo Test.ContainerName al campo del cortador.
  • Seleccione el nombre del contenedor en el filtro para el que desea ver el resumen de resultados.

Copie y pegue la siguiente consulta Power BI directamente en la ventana Get Data>Blank Query. Para obtener más información, consulte Información general sobre informes de ejemplo mediante consultas de OData.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v4.0-preview/TestResultsDaily?
$apply=filter("
                &"Pipeline/PipelineName eq '{pipelineName}' "
                &"and Date/Date ge {startdate}) "
        &"/groupby((TestSK, Test/TestName, Test/ContainerName), "
        &"aggregate( "
            &"ResultCount with sum as TotalCount, "
                &"ResultPassCount with sum as PassedCount, "
                &"ResultFailCount with sum as FailedCount, "
            &"ResultNotExecutedCount with sum as NotExecutedCount, "
                &"ResultNotImpactedCount with sum as NotImpactedCount, "
            &"ResultFlakyCount with sum as FlakyCount)) "
        &"/filter(FailedCount gt 0) "
    &"/compute( "
    &"iif(TotalCount gt NotExecutedCount, ((PassedCount add NotImpactedCount) div cast(TotalCount sub NotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Pruebas fallidas filtradas por el dueño de la prueba

Para ver las pruebas fallidas de una canalización para pruebas que pertenecen a un propietario de prueba determinado, use las siguientes consultas. Para crear el informe, lleve a cabo los siguientes pasos adicionales junto con lo que se define más adelante en este artículo.

  • Expanda Test en Test.TestOwner.
  • Seleccione el cortador de visualización de Power BI y agregue el campo Test.TestOwner al Campo de la segmentación.
  • Seleccione el propietario de la prueba en el filtro para el cual necesita ver el resumen de resultados.

Copie y pegue la siguiente consulta Power BI directamente en la ventana Get Data>Blank Query. Para obtener más información, consulte Información general sobre informes de ejemplo mediante consultas de OData.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v4.0-preview/TestResultsDaily?
$apply=filter("
                &"Pipeline/PipelineName eq '{pipelineName}' "
                &"and Date/Date ge {startdate}) "
        &"/groupby((TestSK, Test/TestName, Test/TestOwner), "
        &"aggregate( "
            &"ResultCount with sum as TotalCount, "
                &"ResultPassCount with sum as PassedCount, "
                &"ResultFailCount with sum as FailedCount, "
            &"ResultNotExecutedCount with sum as NotExecutedCount, "
                &"ResultNotImpactedCount with sum as NotImpactedCount, "
            &"ResultFlakyCount with sum as FlakyCount)) "
        &"/filter(FailedCount gt 0) "
    &"/compute( "
    &"iif(TotalCount gt NotExecutedCount, ((PassedCount add NotImpactedCount) div cast(TotalCount sub NotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Cadenas de sustitución y desglose de consultas

Reemplace las cadenas siguientes por los valores. No incluya los corchetes {} en la sustitución. Por ejemplo, si el nombre de su organización es "Fabrikam", reemplace {organization} por Fabrikam, no por {Fabrikam}.

  • {organization} - Nombre de la organización.
  • {project} - El nombre de su proyecto de equipo.
  • {pipelinename} : el nombre de la canalización. Ejemplo: Fabrikam hourly build pipeline.
  • {startdate} - La fecha para comenzar tu informe. Formato: AAAA-MM-DDZ. Ejemplo: 2021-09-01Z representa el 1 de septiembre de 2021. No incluya entre comillas o corchetes y use dos dígitos tanto para el mes como para la fecha.

Desglose de consultas

En la tabla siguiente se describe cada parte de la consulta.

Elemento de consulta

Descripción


$apply=filter(

Iniciar cláusula filter().

Pipeline/PipelineName eq '{pipelineName}'

Devuelve ejecuciones de pruebas para la canalización especificada.

and Date/Date ge {startdate}

Devuelve las ejecuciones de pruebas en o después de la fecha especificada.

and Workflow eq 'Build'

Devuelve ejecuciones de prueba para la Build canalización de flujo de trabajo.

)

Cláusula de cierre filter().

/groupby(

Iniciar cláusula groupby().

(TestSK, Test/TestName),

Agrupar por el nombre de prueba

aggregate(

Cláusula Start aggregate para sumar las ejecuciones de prueba que coinciden con los criterios de filtro.

ResultCount with sum as TotalCount,

Cuente el número total de ejecuciones de pruebas como TotalCount.

ResultPassCount with sum as PassedCount,

Contar el número total de ejecuciones de pruebas superadas como PassedCount.

ResultFailCount with sum as FailedCount,

Cuente el número total de ejecuciones de pruebas con errores como FailedCount.

ResultNotExecutedCount with sum as NotExecutedCount

Cuente el número total de ejecuciones de pruebas no ejecutadas como NotExecutedCount.

ResultNotImpactedCount with sum as NotImpactedCount,

Cuente el número total de ejecuciones de pruebas no afectadas como NotImpactedCount.

ResultFlakyCount with sum as FlakyCount

Contabilice el número total de ejecuciones de pruebas inestables como FlakyCount.

))

Cerrar las cláusulas aggregate() y groupby().

/filter(FailedCount gt 0)

Filtre para incluir solo las pruebas que tengan al menos un error.

/compute(

Iniciar cláusula compute().

iif(TotalCount gt NotExecutedCount, ((PassedCount add NotImpactedCount) div cast(TotalCount sub NotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate

Para todas las pruebas, calcule PassRate.

)

Cláusula de cierre compute().

(Opcional) Cambiar el nombre de la consulta

Puede cambiar el nombre de la etiqueta de consulta predeterminada, Query1, a algo más significativo. Escriba un nuevo nombre en el panel Configuración de consulta .

Captura de pantalla de las opciones del menú de consulta de Power BI, renombrar consulta.

Expanda la columna Prueba en Power BI

Expanda la columna Test para mostrar la entidad Test.TestName expandida. Al expandir la columna, se aplana el registro en campos específicos. Para obtener más información, consulte Transformar datos de Analytics para generar informes de Power BI, Expandir columnas.

Cambio del tipo de datos de columna

  1. En Power Query Editor, seleccione las columnas TotalCount, PassedCount, FailedCount, NotExecutedCount, NotImpactedCount y FlakyCount. Seleccione Tipo de datos en el menú Transformar y, a continuación, elija Número entero.

  2. Seleccione la columna PassRate. Seleccione Tipo de datos en el menú Transformar y, a continuación, elija Número decimal.

Para obtener más información sobre cómo cambiar el tipo de datos, vea Transformar datos de Analytics para generar informes de Power BI, Transformar un tipo de datos de columna.

Cierre la consulta y aplique los cambios

Cuando termine todas las transformaciones de datos, seleccione Cerrar y aplicar en el menú Inicio . Esta acción guarda la consulta y le devuelve a la pestaña Report en Power BI.

Captura de pantalla de Power Query Editor opción Cerrar y aplicar.

Crear el informe de tabla

  1. En Power BI, en Visualizations, seleccione Table. Arrastre y coloque los campos en el área Columnas .

    Captura de pantalla de las selecciones de campos de visualización para la tabla del informe de pruebas fallidas.

  2. Agregue los siguientes campos a la sección Columnas en el orden indicado.

    • Test.TestName
    • TotalCount
    • PassedCount
    • FailedCount
    • NotImpactedCount
    • NotExecutedCount
    • FlakyCount
    • PassRate

El informe debe tener un aspecto similar al de la imagen siguiente.

Captura de pantalla del informe de la tabla de pruebas de ejemplo fallidas.

Probar recursos de tareas