Testzusammenfassung – Trendbeispielbericht
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020
Pipelines, die Testaufgaben enthalten, können abgefragt werden, um einen Zusammenfassenden Testtrendbericht zu erstellen. Der folgende Bericht zeigt beispielsweise die Anzahl der fehlgeschlagenen Testläufe in jeder Spalte über einen Zeitraum von 24 Tagen zusammen mit dem Liniendiagramm an, das den Trend der Testdurchlaufrate anzeigt. Informationen zum Hinzufügen von Tests zu einer Pipeline finden Sie im Abschnitt "Ressourcen für Testaufgaben" weiter unten in diesem Artikel.
Insbesondere enthält dieser Artikel Beispielabfragen zum Generieren der folgenden Berichte:
- Testzusammenfassungstrend für Buildworkflow
- Testzusammenfassungstrend für Veröffentlichungsworkflow
- Testzusammenfassungstrend für eine bestimmte Verzweigung
- Testzusammenfassungstrend für eine bestimmte Testdatei
- Testzusammenfassungstrend 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
- Access: Mitglied eines Projekts mit mindestens standardem Zugriff sein.
- Berechtigungen: Standardmäßig verfügen Projektmitglieder über die Berechtigung zum Abfragen von Analysen und Erstellen von Ansichten.
- Weitere Informationen zu anderen Voraussetzungen für die Dienst- und Featureaktivierung sowie allgemeine Datenverfolgungsaktivitäten finden Sie unter Berechtigungen und Voraussetzungen für den Zugriff auf Analytics.
Hinweis
In diesem Artikel wird davon ausgegangen, dass Sie eine Übersicht über Beispielberichte mit OData-Abfragen lesen und ein grundlegendes Verständnis von Power BI haben.
Beispielabfragen
Sie können die folgenden Abfragen des TestRuns
Entitätssatzes verwenden, um unterschiedliche, aber ähnliche Trendberichte für Pipelinetests zu erstellen. Die TestRuns
Für die folgenden Abfragen festgelegte Entität ist nur verfügbar, wenn Sie Testaufgaben in eine Pipelinedefinition einschließen.
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 Path
EntityType
verwenden, die Property
mit einem EntitySet
verfügbar sind. Jede EntitySet
entspricht einem EntityType
. Weitere Informationen zum Datentyp der einzelnen Werte erhalten Sie in den Metadaten, die für den entsprechenden Wert EntityType
bereitgestellt werden.
Testzusammenfassungstrend für Buildworkflow
Verwenden Sie die folgenden Abfragen, um den Testzusammenfassungstrend einer Pipeline für einen Buildworkflow anzuzeigen.
Kopieren Sie die folgende Power BI-Abfrage, und fügen Sie sie direkt in das Fenster "Leere Datenabfrage> abrufen" ein. 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/TestRuns?
$apply=filter("
&"Pipeline/PipelineName eq '{pipelineName}' "
&"and CompletedOn/Date ge {startdate} "
&"and Workflow eq 'Build' "
&") "
&"/groupby( "
&"(CompletedOn/Date), "
&"aggregate( "
&"ResultCount with sum as ResultCount, "
&"ResultPassCount with sum as ResultPassCount, "
&"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
&"ResultNotImpactedCount with sum as ResultNotImpactedCount, "
&"ResultFailCount with sum as ResultFailCount "
&")) "
&"/compute( "
&"iif(ResultCount gt ResultNotExecutedCount, ((ResultPassCount add ResultNotImpactedCount) div cast(ResultCount sub ResultNotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate) "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Testzusammenfassungstrend für Releaseworkflow
Verwenden Sie die folgenden Abfragen, um den Testzusammenfassungstrend einer Pipeline anzuzeigen, die für einen Release-Workflow definiert ist.
Kopieren Sie die folgende Power BI-Abfrage, und fügen Sie sie direkt in das Fenster "Leere Datenabfrage> abrufen" ein. 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/TestRuns?
$apply=filter("
&"Pipeline/PipelineName eq '{pipelineName}' "
&"and CompletedOn/Date ge {startdate} "
&"and Workflow eq 'Release' "
&") "
&"/groupby( "
&"(CompletedOn/Date), "
&"aggregate( "
&"ResultCount with sum as ResultCount, "
&"ResultPassCount with sum as ResultPassCount, "
&"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
&"ResultNotImpactedCount with sum as ResultNotImpactedCount, "
&"ResultFailCount with sum as ResultFailCount "
&")) "
&"/compute( "
&"iif(ResultCount gt ResultNotExecutedCount, ((ResultPassCount add ResultNotImpactedCount) div cast(ResultCount sub ResultNotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate) "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Testzusammenfassungstrend gefiltert nach Verzweigung
Verwenden Sie die folgenden Abfragen, um den Testzusammenfassungstrend einer Pipeline 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
inBranch.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.
Kopieren Sie die folgende Power BI-Abfrage, und fügen Sie sie direkt in das Fenster "Leere Datenabfrage> abrufen" ein. 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/TestRuns?
$apply=filter("
&"Pipeline/PipelineName eq '{pipelineName}' "
&"and CompletedOn/Date ge {startdate} "
&"and Workflow eq 'Build' "
&") "
&"/groupby((Branch/BranchName, CompletedOn/Date), "
&"aggregate( "
&"ResultCount with sum as ResultCount, "
&"ResultPassCount with sum as ResultPassCount, "
&"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
&"ResultNotImpactedCount with sum as ResultNotImpactedCount, "
&"ResultFailCount with sum as ResultFailCount "
&")) "
&"/compute( "
&"iif(ResultCount gt ResultNotExecutedCount, ((ResultPassCount add ResultNotImpactedCount) div cast(ResultCount sub ResultNotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate) "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Testzusammenfassungstrend gefiltert nach Testdatei
Verwenden Sie die folgenden Abfragen, um den Testzusammenfassungstrend einer Pipeline für eine bestimmte Testdatei anzuzeigen. 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
inTest.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 den Containernamen aus dem Datenschnitt aus, für den Sie die Ergebniszusammenfassung anzeigen müssen.
Kopieren Sie die folgende Power BI-Abfrage, und fügen Sie sie direkt in das Fenster "Leere Datenabfrage> abrufen" ein. 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/TestRuns?
$apply=filter("
&"Pipeline/PipelineName eq '{pipelineName}' "
&"and CompletedOn/Date ge {startdate} "
&"and Workflow eq 'Build' "
&") "
&"/groupby((Test/ContainerName, Date/Date), "
&"aggregate( "
&"ResultCount with sum as ResultCount, "
&"ResultPassCount with sum as ResultPassCount, "
&"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
&"ResultNotImpactedCount with sum as ResultNotImpactedCount, "
&"ResultFailCount with sum as ResultFailCount "
&")) "
&"/compute( "
&"iif(ResultCount gt ResultNotExecutedCount, ((ResultPassCount add ResultNotImpactedCount) div cast(ResultCount sub ResultNotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate) "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Testzusammenfassungstrend gefiltert nach Testbesitzer
Um den Testzusammenfassungstrend einer Pipeline für Tests im Besitz eines bestimmten Testbesitzers anzuzeigen, verwenden Sie die folgenden Abfragen. 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
inTest.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.
Kopieren Sie die folgende Power BI-Abfrage, und fügen Sie sie direkt in das Fenster "Leere Datenabfrage> abrufen" ein. 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/TestRuns?
$apply=filter("
&"Pipeline/PipelineName eq '{pipelineName}' "
&"and CompletedOn/Date ge {startdate} "
&"and Workflow eq 'Build' "
&") "
&"/groupby((Test/TestOwner, Date/Date), "
&"aggregate( "
&"ResultCount with sum as ResultCount, "
&"ResultPassCount with sum as ResultPassCount, "
&"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
&"ResultNotImpactedCount with sum as ResultNotImpactedCount, "
&"ResultFailCount with sum as ResultFailCount "
&")) "
&"/compute( "
&"iif(ResultCount gt ResultNotExecutedCount, ((ResultPassCount add ResultNotImpactedCount) div cast(ResultCount sub ResultNotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate) "
,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 stündliche Buildpipeline{startdate}
Das Datum, an dem Der Bericht gestartet werden soll. Format: JJJJ-MM-DDZ. Beispiel: 2023-01-01Z steht für den 1. Januar 2023 um 12:50:54 Uhr. Schließen Sie keine Anführungszeichen oder Klammern ein.
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 angegebene Pipeline.
and CompletedOn/Date ge {startdate}
Rückgabetest wird am oder nach dem angegebenen Datum ausgeführt.
and Workflow eq 'Build'
Rückgabetestläufe für die Pipeline mit einem Build
Workflow
)
Close-Klausel filter()
/groupby(
Startklausel groupby()
.
(CompletedOn/Date),
Gruppieren Nach Abschluss des Testlaufs.
aggregate(
Startklausel aggregate
. Summieren Sie für alle Testläufe, die den Filterkriterien entsprechen, die Anzahlreihen.
ResultCount with sum as ResultCount,
Zählen Sie die Gesamtanzahl der Testläufe als ResultCount
.
ResultPassCount with sum as ResultPassCount,
Zählen Sie die Gesamtzahl der bestandenen Testläufe als ResultPassCount
.
ResultNotExecutedCount with sum as ResultNotExecutedCount,
Zählen Sie die Gesamtzahl der nicht ausgeführten Testläufe als ResultNotExecutedCount
.
ResultNotImpactedCount with sum as ResultNotImpactedCount
Zählen Sie die Gesamtzahl der nicht betroffenen Testläufe als ResultNotImpactedCount
.
ResultFailCount with sum as ResultFailCount
Zählen Sie die Gesamtzahl der fehlgeschlagenen Testausführungen als ResultFailCount
.
))
Schließen aggregate()
und groupby()
Klauseln.
/compute(
Startklausel compute()
.
iif(ResultCount gt ResultNotExecutedCount, ((ResultPassCount add ResultNotImpactedCount) div cast(ResultCount sub ResultNotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate
Berechnen Sie PassRate
für alle Tage .
)
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.
Erweitern der Spalte "CompletedOn" in Power BI
Erweitern Sie die CompletedOn
Spalte. 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
Wählen Sie in der Power Query-Editor die PassRate
Spalte aus, wählen Sie "Datentyp" im Menü "Transformieren" und dann "Dezimalzahl" 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.
Erstellen des Berichts zu Linien- und Stapelsäulendiagrammen
Wählen Sie in Power BI unter "Visualisierungen" das Linien- und Stapelspaltendiagramm aus, und ziehen Sie die Felder in die Diagrammbereiche.
Fügen Sie
CompletedOn.Date
der X-Achse hinzu, klicken Sie mit der rechten Maustaste auf das Feld, und wählen Sie "Date.Date" anstelle der Datumshierarchie aus.Zur Spalte y-Achse hinzufügen
ResultFailCount
.Zur Linie y-Achse hinzufügen
PassRate
.
Ihr Bericht sollte ähnlich wie in der folgenden Abbildung aussehen.
Testen von Vorgangsressourcen
- Paralleles Ausführen von Tests mithilfe der Visual Studio Test-Aufgabe
- Parallele Ausführung von Tests für jeden Testläufer
- Beschleunigen von Tests mithilfe der Testauswirkungsanalyse (Test Impact Analysis, TIA)
- Verwalten von schläfigen Tests
- Überlegungen UI-Tests
- Azure-Auslastungstest
- Azure Pipelines-Aufgabenreferenz, Testaufgaben