Testdauer-Beispielbericht

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

Testdauerberichte, ähnlich wie die in der folgenden Abbildung gezeigte, bieten Einen Einblick in die Häufigkeit der Ausführung eines Tests und die durchschnittliche Zeit, die für einen bestimmten Test während einer Pipelineausführung benötigt wird. Informationen zum Hinzufügen von Tests zu einer Pipeline finden Sie im Abschnitt "Ressourcen für Testaufgaben" weiter unten in diesem Artikel.

Screenshot des Berichts

Verwenden Sie die in diesem Artikel bereitgestellten Abfragen, um die folgenden Berichte zu generieren:

  • Testdauer für Buildworkflow
  • Testdauer für Veröffentlichungsworkflow
  • Testdauer für eine bestimmte Verzweigung
  • Testdauer für eine bestimmte Testdatei
  • Testdauer für einen bestimmten Testbesitzer

Wichtig

Power BI-Integration und Zugriff auf den OData-Feed des Analytics-Diensts sind in der Regel für Azure DevOps Services und Azure DevOps Server 2020 und höhere Versionen verfügbar. Die in diesem Artikel bereitgestellten Beispielabfragen gelten nur für Azure DevOps Server 2020 und höhere Versionen und hängen von version 3.0-preview oder höher ab. Wir empfehlen Ihnen, diese Abfragen zu verwenden und uns Feedback zu geben.

Voraussetzungen

  • Um Analytics-Daten anzuzeigen und den Dienst abzufragen, müssen Sie Mitglied eines Projekts mit oder höherer Basiszugriff sein. Standardmäßig erhalten alle Projektmitglieder Berechtigungen zum Abfragen von Analytics und zum Definieren von Analytics-Ansichten.
  • Weitere Informationen zu weiteren Voraussetzungen für die Dienst- und Featureaktivierung sowie allgemeine Datennachverfolgungsaktivitäten finden Sie unter Berechtigungen und Voraussetzungen für den Zugriff auf Analytics.

Hinweis

In diesem Artikel wird davon ausgegangen, dass Sie die Übersicht über Beispielberichte mit OData-Abfragen gelesen haben und über ein grundlegendes Verständnis von Power BI verfügen.

Beispielabfragen

Sie können die folgenden Abfragen des TestResultsDaily Entitätssatzes verwenden, um unterschiedliche, aber ähnliche Testdauerberichte zu erstellen. Der TestResultsDaily Entitätssatz stellt eine tägliche Momentaufnahme Aggregat von TestResult Ausführungen bereit, gruppiert nach Test.

Hinweis

Informationen zum Ermitteln der verfügbaren Eigenschaften für Filter- oder Berichtszwecke finden Sie in der Metadatenreferenz für test Plans Analytics and Metadata reference for Azure Pipelines. Sie können Ihre Abfragen filtern oder Eigenschaften zurückgeben, indem Sie einen der Werte unter oder NavigationPropertyBinding PathEntityType verwenden, die Property mit einem EntitySetverfügbar sind. Jede EntitySet entspricht einem EntityType. Weitere Informationen zum Datentyp der einzelnen Werte finden Sie in den Metadaten, die für den entsprechenden EntityTypebereitgestellt werden.

Testdauer für Buildworkflow

Verwenden Sie die folgenden Abfragen, um den Testdauerbericht für eine Pipeline mit einem Buildworkflow anzuzeigen.

Sie können die unten aufgeführte Power BI-Abfrage direkt in das Fenster Get Data-Blank> Query einfügen. Weitere Informationen finden Sie unter Übersicht über Beispielberichte mit OData-Abfragen.

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

Testdauer für release-Workflow

Verwenden Sie die folgenden Abfragen, um den Testdauerbericht für eine Pipeline mit einem Release-Workflow anzuzeigen.

Sie können die unten aufgeführte Power BI-Abfrage direkt in das Fenster Get Data-Blank> Query einfügen. Weitere Informationen finden Sie unter Übersicht über Beispielberichte mit OData-Abfragen.

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

Nach Verzweigung gefilterte Testdauer

Verwenden Sie die folgenden Abfragen, um die Testdauer von Pipelinetests für eine bestimmte Verzweigung anzuzeigen. Führen Sie zum Erstellen des Berichts die folgenden zusätzlichen Schritte zusammen mit den weiter unten in diesem Artikel angegebenen Schritten aus.

  • Erweitern Branch in Branch.BranchName
  • Wählen Sie power BI Visualization Slicer aus, und fügen Sie das Feld Branch.BranchName zum Feld des Datenschnitts hinzu.
  • Wählen Sie den Verzweigungsnamen aus dem Datenschnitt aus, für den Sie die Ergebniszusammenfassung anzeigen müssen.

Weitere Informationen zur Verwendung von Datenschnitten finden Sie unter Datenschnitte in Power BI.

Sie können die unten aufgeführte Power BI-Abfrage direkt in das Fenster Get Data-Blank> Query einfügen. Weitere Informationen finden Sie unter Übersicht über Beispielberichte mit OData-Abfragen.

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

Testdauer gefiltert nach Testdatei

Verwenden Sie die folgenden Abfragen, um die Testdauer einer Pipeline für Tests anzuzeigen, die einem bestimmten Testbesitzer gehören. Führen Sie zum Erstellen des Berichts die folgenden zusätzlichen Schritte zusammen mit den weiter unten in diesem Artikel definierten Schritten aus.

  • Erweitern Test in Test.ContainerName
  • Wählen Sie power BI Visualization Slicer aus, und fügen Sie das Feld Test.ContainerName zum Feld des Datenschnitts hinzu.
  • Wählen Sie die Testdatei aus dem Datenschnitt aus, für den Sie die Ergebniszusammenfassung anzeigen müssen.

Sie können die unten aufgeführte Power BI-Abfrage direkt in das Fenster Get Data-Blank> Query einfügen. Weitere Informationen finden Sie unter Übersicht über Beispielberichte mit OData-Abfragen.

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

Vom Testbesitzer gefilterte Testdauer

Verwenden Sie die folgenden Abfragen, um die Testdauer einer Pipeline für Tests anzuzeigen, die einem bestimmten Testbesitzer gehören. Führen Sie zum Erstellen des Berichts die folgenden zusätzlichen Schritte zusammen mit den weiter unten in diesem Artikel definierten Schritten aus.

  • Erweitern Test in Test.TestOwner
  • Wählen Sie power BI Visualization Slicer aus, und fügen Sie das Feld Test.TestOwner zum Feld des Datenschnitts hinzu.
  • Wählen Sie den Testbesitzer aus dem Datenschnitt aus, für den Sie die Ergebniszusammenfassung anzeigen müssen.

Sie können die unten aufgeführte Power BI-Abfrage direkt in das Fenster Get Data-Blank> Query einfügen. Weitere Informationen finden Sie unter Übersicht über Beispielberichte mit OData-Abfragen.

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

Ersetzungszeichenfolgen und Abfrageaufschlüsselung

Ersetzen Sie die folgenden Zeichenfolgen durch Ihre Werte. Schließen Sie keine Klammern {} in Ihre Ersetzung ein. Wenn Ihr Organisationsname beispielsweise "Fabrikam" lautet, ersetzen Sie {organization} durch Fabrikam, nicht {Fabrikam}.

  • {organization} - Name Ihrer Organisation
  • {project} - Name Ihres Teamprojekts
  • {pipelinename} - Ihr Pipelinename. Beispiel: Fabrikam hourly build pipeline
  • {startdate} - Das Datum, an dem Der Bericht beginnt. Format: JJJJ-MM-DDZ. Beispiel: 2021-09-01Z steht für den 1. September 2021. Schließen Sie keine Anführungszeichen oder eckigen Klammern ein, und verwenden Sie zwei Ziffern sowohl für Monat als auch für Datum.

Abfrageaufschlüsselung

In der folgenden Tabelle werden die einzelnen Teile der Abfrage beschrieben.

Abfrageteil

Beschreibung


$apply=filter(

Startklausel filter() .

Pipeline/PipelineName eq '{pipelineName}'

Rückgabetestläufe für die benannte Pipeline.

And Date/Date ge {startdate}

Rückgabetest wird am oder nach dem angegebenen Datum ausgeführt.

and Workflow eq 'Build'

Rückgabetestausführungen für einen Build Workflow.

)

Close-Klausel filter() .

/groupby(

Startklausel groupby() .

(TestSK, Test/TestName),

Gruppieren nach dem Testnamen.

aggregate(

Startklausel aggregate zum Addieren verschiedener Testlaufergebnisse, die den Filterkriterien entsprechen.

ResultCount with sum as TotalCount,

Zählen Sie die Gesamtanzahl der Testläufe als TotalCount.

ResultDurationSeconds with sum as TotalDuration

Summieren sie die Gesamtdauer aller Vorgänge als TotalDuration.

))

Schließen aggregate() und groupby() Klauseln.

/compute(

Startklausel compute() .

TotalDuration div TotalCount as AvgDuration

Berechnen Sie für alle Tests die durchschnittliche Dauer, indem Sie die Gesamtdauer durch die Gesamtanzahl der Läufe dividieren.

)

Close-Klausel compute() .

(Optional) Abfrage umbenennen

Sie können die Standardabfragebezeichnung Query1 in aussagekräftiger umbenennen. Geben Sie einfach im Bereich Abfrageeinstellungen einen neuen Namen ein.

Screenshot: Menüoptionen für Power BI-Abfragen, Abfrage umbenennen.

Erweitern der Spalte "Test" in Power BI

Erweitern Sie die Test Spalte, um die erweiterte Entität Test.TestNameanzuzeigen. Durch das Erweitern der Spalte wird der Datensatz in bestimmte Felder vereinfacht. Informationen dazu finden Sie unter Transform Analytics-Daten zum Generieren von Power BI-Berichten, Erweitern von Spalten.

Ändern des Spaltendatentyps

  1. Wählen Sie in der Power Query-Editor die TotalCount Spalte aus, wählen Sie "Datentyp" im Menü "Transformieren" und dann Wer le Zahl aus.

  2. Wählen Sie die und die TotalDuration Spalten aus, wählen Sie "Datentyp" im Menü "Transformieren" und dann "Dezimalzahl" AvgDuration aus.

Weitere Informationen zum Ändern des Datentyps finden Sie unter Transform Analytics-Daten zum Generieren von Power BI-Berichten, Transformieren eines Spaltendatentyps.

Schließen Sie die Abfrage, und wenden Sie Ihre Änderungen an.

Nachdem Sie alle Datentransformationen abgeschlossen haben, wählen Sie "Schließen" und "Übernehmen " im Menü "Start " aus, um die Abfrage zu speichern und zur Registerkarte "Bericht " in Power BI zurückzukehren.

Screenshot der Option

Erstellen des Tabellenberichts

  1. Wählen Sie in Power BI unter "Visualisierungen" die Option "Tabelle " aus, und ziehen Sie die Felder in den Spaltenbereich .

    Screenshot der Auswahl von Visualisierungsfeldern für den Bericht

  2. Fügen Sie dem Abschnitt "Spalten" die folgenden Felder in der aufgeführten Reihenfolge hinzu.

    • Test.TestName
    • TotalCount
    • AvgDuration
  3. Klicken Sie mit der rechten Maustaste auf den AvgDuration Mittelwert und wählen Sie "Mittelwert" anstelle von "Summe" aus.

Ihr Bericht sollte ähnlich wie in der folgenden Abbildung aussehen.

Screenshot des Beispielberichts zur Testdauertabelle.

Testen von Vorgangsressourcen