Udostępnij za pośrednictwem


Przykładowy raport podsumowania testów

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

Po wykonaniu uruchomienia potoku i dołączeniu zadań testowych w definicji potoku można utworzyć raport wskazujący liczbę przebiegów testów dla różnych wyników testu: Zakończony powodzeniem, Niepowodzenie, Nie wykonane, Nie dotyczy.

Na poniższej ilustracji przedstawiono przykład raportu podsumowania testu.

Zrzut ekranu przedstawiający raport pierścieniowy podsumowania testu.

Użyj zapytań podanych w tym artykule, aby wygenerować następujące raporty:

  • Podsumowanie testu dla przepływu pracy kompilacji
  • Podsumowanie testu przepływu pracy wydania
  • Podsumowanie testu dla określonej gałęzi
  • Podsumowanie testu dla określonego pliku testowego
  • Podsumowanie testu dla określonego właściciela testu

Ważne

Integracja usługi Power BI i dostęp do źródła danych OData usługi Analytics są ogólnie dostępne dla usług Azure DevOps Services i Azure DevOps Server 2020 i nowszych wersji. Przykładowe zapytania podane w tym artykule są prawidłowe tylko w przypadku usługi Azure DevOps Server 2020 i nowszych wersji oraz zależą od wersji 3.0 w wersji zapoznawczej lub nowszej. Zachęcamy do korzystania z tych zapytań i przekazywania opinii.

Wymagania wstępne

Uwaga

W tym artykule założono, że zapoznasz się z omówieniem przykładowych raportów przy użyciu zapytań OData i masz podstawową wiedzę na temat usługi Power BI.

Przykładowe zapytania

Następujące zapytania TestResultsDaily zestawu jednostek umożliwiają tworzenie różnych, ale podobnych raportów podsumowania testów potoku. Zestaw TestResultsDaily jednostek udostępnia codzienną agregację TestResult migawek wykonań pogrupowanych według testu.

Uwaga

Aby określić dostępne właściwości dla celów filtru lub raportu, zobacz Dokumentacja metadanych dla planów testów i dokumentacja metadanych dla usługi Azure Pipelines. Możesz filtrować zapytania lub zwracać właściwości przy użyciu dowolnej z Property wartości dostępnych EntityType w elemecie EntitySetlub NavigationPropertyBinding Path . Każda z nich EntitySet odpowiada elementowi EntityType. Aby uzyskać więcej informacji na temat typu danych każdej wartości, zapoznaj się z metadanymi podanymi dla odpowiedniego EntityTypeelementu .

Podsumowanie testu dla przepływu pracy kompilacji

Użyj następujących zapytań, aby wyświetlić podsumowanie testu potoku dla przepływu pracy kompilacji .

Skopiuj i wklej następujące zapytanie usługi Power BI bezpośrednio w oknie Pobieranie pustego >zapytania. Aby uzyskać więcej informacji, zobacz Omówienie przykładowych raportów przy użyciu zapytań OData.

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And DateSK ge {startdate} "
      &"And Workflow eq 'Build' "
      &")/aggregate("
      &"ResultCount with sum as ResultCount, "
      &"ResultPassCount with sum as ResultPassCount, "
      &"ResultFailCount with sum as ResultFailCount, "
      &"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
      &"ResultNotImpactedCount with sum as ResultNotImpactedCount"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Zastąp {pipelineName} wartości i {startdate} rzeczywistymi wartościami zapytania.

Podsumowanie testu dla przepływu pracy wydania

Użyj następujących zapytań, aby wyświetlić podsumowanie testu potoku dla przepływu pracy wydania .

Uwaga

Aby określić dostępne właściwości dla celów filtru lub raportu, zobacz Dokumentacja metadanych dla analiz planów testów. Możesz filtrować zapytania lub zwracać właściwości przy użyciu dowolnej z Property wartości dostępnych EntityType w elemecie EntitySetlub NavigationPropertyBinding Path . Każda z nich EntitySet odpowiada elementowi EntityType. Aby uzyskać więcej informacji na temat typu danych każdej wartości, zapoznaj się z metadanymi podanymi dla odpowiedniego EntityTypeelementu .

Skopiuj i wklej następujące zapytanie usługi Power BI bezpośrednio w oknie Pobieranie pustego >zapytania. Aby uzyskać więcej informacji, zobacz Omówienie przykładowych raportów przy użyciu zapytań OData.

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And DateSK ge {startdate} "
      &"And Workflow eq 'Release'"
      &")/aggregate("
      &"ResultCount with sum as ResultCount, "
      &"ResultPassCount with sum as ResultPassCount, "
      &"ResultFailCount with sum as ResultFailCount, "
      &"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
      &"ResultNotImpactedCount with sum as ResultNotImpactedCount"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Podsumowanie testu filtrowane według gałęzi

Aby wyświetlić podsumowanie testu potoku dla określonej gałęzi, użyj następujących zapytań. Aby utworzyć raport, wykonaj następujące dodatkowe kroki wraz z elementami określonymi w dalszej części tego artykułu.

  • Rozwiń Branch do Branch.BranchName
  • Wybierz fragmentator wizualizacji usługi Power BI i dodaj pole do pola Branch.BranchName fragmentatora
  • Wybierz nazwę gałęzi z fragmentatora, dla którego chcesz wyświetlić podsumowanie wyników.

Aby uzyskać więcej informacji na temat używania fragmentatorów, zobacz Fragmentatory w usłudze Power BI.

Skopiuj i wklej następujące zapytanie usługi Power BI bezpośrednio w oknie Pobieranie pustego >zapytania. Aby uzyskać więcej informacji, zobacz Omówienie przykładowych raportów przy użyciu zapytań OData.

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And DateSK ge {startdate} "
      &"And Workflow eq 'Build'"
      &")/groupby("
      &"(Branch/BranchName),"
      &"aggregate("
      &"ResultCount with sum as ResultCount, "
      &"ResultPassCount with sum as ResultPassCount, "
      &"ResultFailCount with sum as ResultFailCount, "
      &"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
      &"ResultNotImpactedCount with sum as ResultNotImpactedCount"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Podsumowanie testu filtrowane według pliku testowego

Aby wyświetlić podsumowanie testu potoku dla określonego pliku testowego, użyj następujących zapytań. Aby utworzyć raport, wykonaj następujące dodatkowe kroki wraz z definicją w dalszej części tego artykułu.

  • Rozwiń Test do Test.ContainerName
  • Wybierz fragmentator wizualizacji usługi Power BI i dodaj pole do pola Test.ContainerName fragmentatora
  • Wybierz nazwę kontenera z fragmentatora, dla którego chcesz wyświetlić podsumowanie wyników.

Skopiuj i wklej następujące zapytanie usługi Power BI bezpośrednio w oknie Pobieranie pustego >zapytania. Aby uzyskać więcej informacji, zobacz Omówienie przykładowych raportów przy użyciu zapytań OData.

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And DateSK ge {startdate} "
      &"And Workflow eq 'Build'"
      &")/groupby("
      &"(Test/ContainerName),"
      &"aggregate("
      &"ResultCount with sum as ResultCount, "
      &"ResultPassCount with sum as ResultPassCount, "
      &"ResultFailCount with sum as ResultFailCount, "
      &"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
      &"ResultNotImpactedCount with sum as ResultNotImpactedCount"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Podsumowanie testu filtrowane według właściciela testu

Aby wyświetlić podsumowanie testu potoku dla testów należących do określonego właściciela testu, użyj następujących zapytań. Aby utworzyć raport, wykonaj następujące dodatkowe kroki wraz z definicją w dalszej części tego artykułu.

  • Rozwiń Test do Test.TestOwner
  • Wybierz fragmentator wizualizacji usługi Power BI i dodaj pole do pola Test.TestOwner fragmentatora
  • Wybierz właściciela testu z fragmentatora, dla którego musisz wyświetlić podsumowanie wyników.

Skopiuj i wklej następujące zapytanie usługi Power BI bezpośrednio w oknie Pobieranie pustego >zapytania. Aby uzyskać więcej informacji, zobacz Omówienie przykładowych raportów przy użyciu zapytań OData.

let
   Source = OData.Feed (
      "https://analytics.dev.azure.com/mseng/AzureDevOps/_odata/v4.0-preview/TestResultsDaily?"
      &"$apply=filter("
      &"Pipeline/PipelineName eq '{pipelineName}' "
      &"And DateSK ge {startdate} "
      &"And Workflow eq 'Build'"
      &")/groupby("
      &"(Test/TestOwner),"
      &"aggregate("
      &"ResultCount with sum as ResultCount, "
      &"ResultPassCount with sum as ResultPassCount, "
      &"ResultFailCount with sum as ResultFailCount, "
      &"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
      &"ResultNotImpactedCount with sum as ResultNotImpactedCount"
      &")",
      null, [Implementation="2.0", OmitValues = ODataOmitValues.Nulls, ODataVersion = 4]
   )
in
    Source

Ciągi podstawienia i podział zapytań

Zastąp następujące ciągi wartościami. Nie dołączaj nawiasów {} do podstawienia. Na przykład jeśli nazwa organizacji to "Fabrikam", zastąp Fabrikamciąg {organization} , a nie {Fabrikam}.

 

  • {organization} — Nazwa organizacji.
  • {project} — Nazwa projektu zespołowego.
  • {pipelinename} — Nazwa potoku. Przykład: Fabrikam hourly build pipeline.
  • {startdate} — Data rozpoczęcia raportu. Daty można wprowadzić w formacie RRRRMDD. Na przykład 20220815 dla 15 sierpnia 2022 r.

Podział zapytań

W poniższej tabeli opisano każdą część zapytania.

Część kwerendy

Opis

$apply=filter(

Klauzula Start filter() .

Pipeline/PipelineName eq '{pipelineName}'

Zwracanie przebiegów testów dla określonego potoku.

and CompletedOn/Date ge {startdate}

Zwracany test jest uruchamiany w określonym dniu lub po określonej dacie.

and Workflow eq 'Build' lub and Workflow eq 'Release'

Zwracanie przebiegów testu tylko dla potoków wyznaczonych za pomocą Build przepływu pracy lub Release .

)

Zamknij filter() klauzulę.

aggregate(

Uruchom klauzulę aggregate dla wszystkich przebiegów testów spełniających kryteria filtrowania.

ResultCount with sum as ResultCount,

Zlicz łączną liczbę przebiegów testów jako ResultCount.

ResultPassCount with sum as ResultPassCount,

Zlicz łączną liczbę przebiegów testów zakończonych powodzeniem jako ResultPassCount.

ResultFailCount with sum as ResultFailCount

Zlicz łączną liczbę przebiegów testu zakończonych niepowodzeniem jako ResultFailCount.

ResultNotExecutedCount with sum as ResultNotExecutedCount,

Zlicz łączną liczbę nie wykonanych przebiegów testu jako ResultNotExecutedCount.

ResultNotImpactedCount with sum as ResultNotImpactedCount

Zlicz łączną liczbę przebiegów testów, których nie dotyczy problem, jako ResultNotImpactedCount.

)

Zamknij klauzulę aggregate() .

(Opcjonalnie) Zmienianie nazwy zapytania

Możesz zmienić nazwę domyślnej etykiety zapytania Query1 na bardziej zrozumiałą. Po prostu wprowadź nową nazwę w okienku Ustawienia zapytania.

Zrzut ekranu przedstawiający opcje menu zapytania usługi Power BI, zmień nazwę zapytania.

(Opcjonalnie) Zmienianie nazwy pól kolumn

Możesz zmienić nazwy pól kolumn. Możesz na przykład zmienić nazwę kolumny Pipeline.PipelineName na Pipeline Name, lub TotalCount na Total Count. Aby dowiedzieć się, jak to zrobić, zobacz Zmienianie nazwy pól kolumn.

Zamknij zapytanie i zastosuj zmiany

Po zakończeniu wszystkich przekształceń danych wybierz pozycję Zamknij i zastosuj z menu Narzędzia główne , aby zapisać zapytanie i wrócić do karty Raport w usłudze Power BI.

Zrzut ekranu przedstawiający opcję zamknij i zastosuj Edytor Power Query.

Tworzenie raportu wykresu pierścieniowego

  1. W usłudze Power BI w obszarze Wizualizacje wybierz raport Pierścieniowy .

    Zrzut ekranu przedstawiający wybrane pola wizualizacji dla raportu podsumowania testu.

  2. Dodaj następujące pola do wartości w podanej kolejności. Kliknij prawym przyciskiem myszy każde pole i upewnij się, że wybrano pozycję Suma .

    • ResultPassCount
    • ResultFailCount
    • ResultNotExecutedCount
    • ResultNotImpactedCount

Raport powinien wyglądać podobnie do poniższej ilustracji.

Zrzut ekranu przedstawiający przykładowy raport pierścieniowy podsumowania testu.