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.
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
aBranch.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
aTest.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
aTest.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.
Expansión de la columna Prueba en Power BI
Expanda la Test
columna para mostrar la entidad Test.TestName
expandida . 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
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.Seleccione las
TotalDuration
columnas yAvgDuration
, 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.
Creación del informe de tabla
En Power BI, en Visualizaciones, elija **Tabla y arrastre y coloque los campos en el área Columnas .
Agregue los siguientes campos a la sección Columnas en el orden indicado.
Test.TestName
TotalCount
AvgDuration
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.