Tendência da taxa de aprovação de um relatório de amostra de teste

Serviços de DevOps do Azure | Azure DevOps Server 2022 | Azure DevOps Server 2020

Os relatórios de tendência de taxa de aprovação fornecem informações sobre o tempo médio necessário para a execução de um determinado teste durante a execução de um pipeline.

Um exemplo é mostrado na imagem a seguir.

Captura de tela do relatório de tendência de taxa de aprovação.

Importante

A integração do Power BI e o acesso ao feed OData do Serviço de Análise estão geralmente disponíveis para os Serviços de DevOps do Azure e o Azure DevOps Server 2020 e versões posteriores. As consultas de exemplo fornecidas neste artigo são válidas apenas no Azure DevOps Server 2020 e versões posteriores e dependem da versão v3.0-preview ou posterior. Nós encorajamos você a usar essas consultas e nos fornecer feedback.

Pré-requisitos

  • Para visualizar dados do Google Analytics e consultar o serviço, você precisa ser membro de um projeto com acesso Básico ou superior. Por padrão, todos os membros do projeto recebem permissões para consultar o Google Analytics e definir exibições do Google Analytics.
  • Para saber mais sobre outros pré-requisitos relacionados à ativação de serviços e recursos e atividades gerais de controle de dados, consulte Permissões e pré-requisitos para acessar o Google Analytics.

Nota

Este artigo pressupõe que você leu Visão geral de relatórios de exemplo usando consultas OData e tem uma compreensão básica do Power BI.

Consultas de amostra

Nota

Este artigo pressupõe que você leu Visão geral de relatórios de exemplo usando consultas OData e tem uma compreensão básica do Power BI.

Você pode colar a consulta do Power BI listada abaixo diretamente na janela Obter consulta em branco de dados>. Para obter mais informações, consulte Visão geral de relatórios de exemplo usando consultas 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 Test/TestName eq '{testName}' "
        &"And Workflow eq 'Build') "
            &"/groupby((Date/Date), "
                &"aggregate( "
                &"ResultCount with sum as TotalCount, "
            &"ResultPassCount with sum as ResultPassCount, "
                &"ResultFailCount with sum as ResultFailCount, "
            &"ResultAbortedCount with sum as ResultAbortedCount, "
        &"ResultErrorCount with sum as ResultErrorCount, "
    &"ResultInconclusiveCount with sum as ResultInconclusiveCount, "
    &"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
    &"ResultNotImpactedCount with sum as ResultNotImpactedCount)) "
    &"/filter(ResultFailCount gt 0) "
    &"/compute( "
    &"iif(TotalCount gt ResultNotExecutedCount, ((ResultPassCount add ResultNotImpactedCount) div cast(TotalCount sub ResultNotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Cadeias de caracteres de substituição e detalhamento de consulta

Substitua as seguintes cadeias de caracteres por seus valores. Não inclua parênteses com a {} sua substituição. Por exemplo, se o nome da sua organização for "Fabrikam", substitua {organization} por Fabrikam, não {Fabrikam}.

 

  • {organization} - Nome da sua organização
  • {project} - O nome do seu projeto de equipa
  • {pipelinename} - O nome do seu pipeline. Exemplo: Fabrikam hourly build pipeline
  • {testName} - O seu nome de teste
  • {startdate} - A data para iniciar o seu relatório. Formato: AAAA-MM-DDZ. Exemplo: 2021-09-01Z representa 1º de setembro de 2021. Não coloque entre aspas ou parênteses e use dois dígitos para ambos, mês e data.

Detalhamento da consulta

A tabela a seguir descreve cada parte da consulta.

Parte da consulta

Descrição


$apply=filter(

Cláusula inicial filter() .

Pipeline/PipelineName eq '{pipelineName}'

Execuções de teste de retorno para o pipeline especificado

And Date/Date ge {startdate}

O teste de retorno é executado na data especificada ou após ela.

And Test/TestName eq '{testName}'

O teste de retorno é executado somente para o nome de teste especificado.

and Workflow eq 'Build'

O teste de retorno é executado para Build o fluxo de trabalho.

)

Cláusula de fechamento filter() .

/groupby(

Cláusula inicial groupby() .

(Date/Date),

Agrupar até a data de conclusão da execução do teste.

aggregate(

Cláusula Start aggregate para somar diferentes resultados de execução de teste correspondentes aos critérios de filtro.

ResultCount with sum as TotalCount,

Conte o número total de execuções de teste como TotalCount.

ResultPassCount with sum as ResultPassCount,

Conte o número total de execuções de teste aprovadas como ResultPassCount.

ResultFailCount with sum as ResultFailCount,

Conte o número total de execuções de teste com falha como ResultFailCount.

ResultAbortedCount with sum as ResultAbortedCount,

Conte o número total de execuções de teste abortadas como ResultAbortedCount.

ResultErrorCount with sum as ResultErrorCount,

Conte o número total de execuções de teste marcadas como tendo um erro como ResultErrorCount.

ResultNotExecutedCount with sum as ResultNotExecutedCount,

Conte o número total de execuções de teste não executadas como ResultNotExecutedCount.

ResultNotImpactedCount with sum as ResultNotImpactedCount

Conte o número total de execuções de teste não afetadas como ResultNotImpactedCount.

))

Fechar aggregate() e groupby() cláusulas.

/compute(

Cláusula inicial compute() .

iif(TotalCount gt ResultNotExecutedCount, ((ResultPassCount add ResultNotImpactedCount) div cast(TotalCount sub ResultNotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate)

Para todos os dias, calcule o PassRate .

)

Cláusula de fechamento compute() .

(Opcional) Renomear consulta

Você pode renomear o rótulo de consulta padrão, Query1, para algo mais significativo. Basta inserir um novo nome no painel Configurações de consulta.

Captura de ecrã das opções do menu de consulta do Power BI, consulta de mudança de nome.

Expandir a coluna Data no Power BI

Expanda a Date coluna para mostrar a entidade CompletedOn.Dateexpandida. A expansão de uma coluna nivela o registro em campos específicos. Para saber como, consulte Transformar dados do Analytics para gerar relatórios do Power BI, Expandir colunas.

Alterar o tipo de dados da coluna

  1. No Editor do Power Query, selecione a TotalCount coluna, selecione Tipo de Dados no menu Transformar e, em seguida, escolha Número Inteiro.

  2. Selecione a PassRatecoluna, selecione Tipo de Dados no menu Transformar e escolha Número decimal.

Para saber mais sobre como alterar o tipo de dados, consulte Transformar dados do Analytics para gerar relatórios do Power BI, Transformar um tipo de dados de coluna.

Feche a consulta e aplique as alterações

Depois de concluir todas as suas transformações de dados, escolha Fechar & Aplicar no menu Início para salvar a consulta e retornar à guia Relatório no Power BI.

Captura de ecrã da opção Fechar e Aplicar do Power Query Editor.

Criar o relatório do gráfico de linhas e colunas de pilha

  1. No Power BI, em Visualizações, escolha o gráfico de colunas de linha e pilha e arraste e solte os campos nas áreas do gráfico.

    Captura de tela das seleções de campos de visualização para o relatório da tabela de duração de tendência de taxa de aprovação.

  2. Adicione Date.Date ao eixo X, clique com o botão direito do mouse no campo e selecione Data.Data em vez de Hierarquia de Data.

  3. Adicionar ResultPassCount e ResultFailCount ao eixo y da coluna.

  4. Adicione PassRate ao eixo y da linha.

Seu relatório deve ser semelhante à imagem a seguir.

Captura de tela do relatório de tendência de taxa de aprovação de amostra.

Recursos da tarefa de teste