Partekatu honen bidez:


Informe de ejemplo de duración de prueba

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020

Los informes de duración de la prueba, similares a los que se muestran en la imagen siguiente, proporcionan información sobre el número de veces que se ejecuta una prueba y el promedio de tiempo que tarda una prueba determinada en ejecutarse durante una ejecución de canalización.

Captura de pantalla del informe Tabla de duración de prueba.

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

  • Duración de la prueba para el flujo de trabajo de compilación
  • Duración de la prueba para el flujo de trabajo de versión
  • Duración de la prueba para una rama determinada
  • Duración de la prueba para un archivo de prueba determinado
  • Duración de la prueba para un propietario de prueba determinado

Importante

La integración y el acceso de Power BI a la fuente OData del servicio Analytics están disponibles con carácter general para Azure DevOps Services y Azure DevOps Server 2020 y versiones posteriores. Las consultas de ejemplo proporcionadas en este artículo solo son válidas en Azure DevOps Server 2020 y versiones posteriores, y dependen de la versión v3.0-preview o posterior. Le recomendamos que use estas consultas y nos proporcione sus comentarios.

Requisitos previos

  • Access: sea miembro de un proyecto con 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 supuesto que lee Información general de los informes de ejemplo mediante consultas de OData y tiene conocimientos básicos de Power BI.

Consultas de ejemplo

Puede usar las siguientes consultas del TestResultsDaily conjunto de entidades para crear informes de duración de prueba diferentes pero similares. El TestResultsDaily conjunto de entidades proporciona un agregado diario de instantáneas de TestResult ejecuciones agrupadas por prueba.

Nota:

Para determinar las propiedades disponibles con fines de filtro o informe, consulte Referencia de metadatos para análisis de planes de prueba y referencia de metadatos para Azure Pipelines. Puede filtrar las consultas o devolver propiedades mediante cualquiera de los Property valores de un EntityType valor o NavigationPropertyBinding Path disponible con .EntitySet Cada EntitySet uno corresponde a un objeto EntityType. Para obtener más información sobre el tipo de datos de cada valor, revise los metadatos proporcionados para el correspondiente EntityType.

Duración de la prueba para el flujo de trabajo de compilación

Use las siguientes consultas para ver el informe de duración de la prueba de una canalización con un flujo de trabajo de compilación .

Copie y pegue la siguiente consulta de Power BI directamente en la ventana Obtener consulta en blanco de datos>. 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, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Duración de la prueba para el flujo de trabajo de versión

Use las siguientes consultas para ver el informe de duración de la prueba de una canalización con un flujo de trabajo de versión .

Copie y pegue la siguiente consulta de Power BI directamente en la ventana Obtener consulta en blanco de datos>. 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, Workflow),"
      &"aggregate("
      &"ResultCount with sum as TotalCount, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Duración de la prueba filtrada por rama

Para ver la duración de la prueba de las pruebas de 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.

  • Expandir Branch a Branch.BranchName
  • Seleccione Segmentación de visualización de Power BI y agregue el campo al campo Branch.BranchName de la segmentación de datos.
  • Seleccione el nombre de la rama en la segmentación para la que necesita ver el resumen de resultados.

Para más información sobre el uso de segmentaciones de datos, consulte Segmentaciones de datos en Power BI.

Copie y pegue la siguiente consulta de Power BI directamente en la ventana Obtener consulta en blanco de datos>. 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, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Duración de la prueba filtrada por el archivo de prueba

Para ver la duración de la prueba de una canalización para las 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.

  • Expandir Test a Test.ContainerName
  • Seleccione Segmentación de visualización de Power BI y agregue el campo al campo Test.ContainerName de la segmentación de datos.
  • Seleccione el archivo de prueba de la segmentación de datos para la que necesita ver el resumen de resultados.

Copie y pegue la siguiente consulta de Power BI directamente en la ventana Obtener consulta en blanco de datos>. 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, Test/ContainerName),"
      &"aggregate("
      &"ResultCount with sum as TotalCount, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Duración de la prueba filtrada por el propietario de la prueba

Para ver la duración de la prueba de una canalización para las 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.

  • Expandir Test a Test.TestOwner
  • Seleccione Segmentación de visualización de Power BI y agregue el campo al campo Test.TestOwner de la segmentación de datos.
  • Seleccione el propietario de la prueba en la segmentación de datos para la que necesita ver el resumen de resultados.

Copie y pegue la siguiente consulta de Power BI directamente en la ventana Obtener consulta en blanco de datos>. 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, Test/TestOwner),"
      &"aggregate("
      &"ResultCount with sum as TotalCount, "
      &"ResultDurationSeconds with sum as TotalDuration"
      &"))/compute("
      &"TotalDuration div TotalCount as AvgDuration"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Cadenas de sustitución y desglose de consultas

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

  • {organization} - Nombre de la organización.
  • {project} : el nombre del proyecto de equipo.
  • {pipelinename} : el nombre de la canalización. Ejemplo: Fabrikam hourly build pipeline.
  • {startdate} - La fecha de inicio del 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(

Cláusula Start filter() .

Pipeline/PipelineName eq '{pipelineName}'

Devuelve ejecuciones de pruebas para la canalización con nombre.

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 pruebas para un Build flujo de trabajo.

)

Cláusula Close filter() .

/groupby(

Cláusula Start groupby() .

(TestSK, Test/TestName),

Agrupe por el nombre de la prueba.

aggregate(

Cláusula Start aggregate para sumar resultados de ejecución de pruebas diferentes que coincidan con los criterios de filtro.

ResultCount with sum as TotalCount,

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

ResultDurationSeconds with sum as TotalDuration

Suma la duración total de todas las ejecuciones como TotalDuration.

))

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

/compute(

Cláusula Start compute() .

TotalDuration div TotalCount as AvgDuration

Para todas las pruebas, calcule la duración media dividiendo la duración total por número total de ejecuciones.

)

Cláusula Close compute() .

(Opcional) Cambiar el nombre de la consulta

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

Captura de pantalla de las opciones del menú de consulta de Power BI, cambiar el nombre de la consulta.

Expansión de la columna Prueba en Power BI

Expanda la Test columna para mostrar la entidad Test.TestNameexpandida . Al expandir la columna se aplana el registro en campos específicos. Para obtener información sobre cómo hacerlo, consulte Transformación de datos de Análisis para generar informes de Power BI, Expandir columnas.

Cambio del tipo de datos de columna

  1. En el Editor de Power Query, seleccione la TotalCount columna; seleccione Tipo de datos en el menú Transformar y, a continuación, elija Número entero.

  2. Seleccione las TotalDuration columnas y AvgDuration , 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, consulte Transformación de datos de Análisis para generar informes de Power BI, Transformación de un tipo de datos de columna.

Cierre la consulta y aplique los cambios

Una vez que haya completado todas las transformaciones de datos, elija Cerrar y aplicar en el menú Inicio para guardar la consulta y volver a la pestaña Informe en Power BI.

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

Creación del informe de tabla

  1. En Power BI, en Visualizaciones, elija **Tabla y arrastre y coloque los campos en el área Columnas .

    Captura de pantalla de las selecciones de campos de visualización para el informe de la tabla Duración de la prueba.

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

    • Test.TestName
    • TotalCount
    • AvgDuration
  3. Seleccione el AvgDuration botón derecho y elija Promedio en lugar de Suma.

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

Captura de pantalla del informe de tabla de duración de prueba de ejemplo.