Überprüfen der Testergebnisse

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Automatisierte Tests können so konfiguriert werden, dass sie als Teil eines Builds oder Release für verschiedene Sprachen ausgeführt werden. Testberichte sind eine effektive und konsistente Möglichkeit, die Ergebnisse von mit verschiedenen Testframeworks ausgeführten Tests anzuzeigen, um die Pipelinequalität zu messen, die Nachverfolgbarkeit zu überprüfen, Fehler zu behandeln und die Verantwortlichkeit für Fehler zu fördern. Darüber hinaus stehen viele erweiterte Berichterstellungsfunktionen zur Verfügung, die in den folgenden Abschnitten behandelt werden.

Sie können auch den Analytics-Dienst verwenden, um Testergebnisse ausführlicher zu analysieren. Ein Beispiel für die Verwendung mit Ihren Build- und Bereitstellungspipelines finden Sie unter Testanalysen.

Lesen Sie das Glossar, um mehr über die Terminologie von Testberichten zu erfahren.

Veröffentlichte Testergebnisse können auf der Registerkarte Tests in einer Build- oder Releasezusammenfassung angezeigt werden.

Anzeigen von Testergebnissen auf der Registerkarte „Tests“

Testergebnisse können auf der Registerkarte Tests mithilfe einer der folgenden Optionen angezeigt werden:

  • Automatisch abgeleitete Testergebnisse: Standardmäßig kann Ihre Pipeline die Testausgabe für einige beliebte Test Runner automatisch ableiten. Hierzu werden die Fehlerprotokolle geparst, die während des Buildvorgangs generiert wurden, und auf Signaturen von Testfehlern überprüft. Von Azure DevOps werden derzeit folgende Programmiersprachen und Test Runner für die automatische Ableitung von Testergebnissen unterstützt:

  • Testausführungsaufgaben: Integrierte Testausführungsaufgaben wie Visual Studio Test, die Testergebnisse automatisch in der Pipeline veröffentlichen, oder andere Aufgaben wie Ant, Maven, Gulp, Grunt und Xcode, die diese Funktion als Option innerhalb der Aufgabe bereitstellen.

  • Aufgabe zum Veröffentlichen der Testergebnisse: Aufgabe, die Testergebnisse in Azure Pipelines oder TFS veröffentlicht, wenn Tests mit dem von Ihnen gewählten Runner ausgeführt werden und die Ergebnisse in einem der unterstützten Testergebnisformate verfügbar sind.

  • API(s): Testergebnisse, die direkt unter Verwendung der Testverwaltungs-API(s) veröffentlicht werden.

Anzeigen von Testergebnissen außerhalb der Registerkarte „Tests“

Die Registerkarte Tests enthält eine detaillierte Zusammenfassung der Testausführung. Dies ist hilfreich, um die Qualität der Pipeline nachzuverfolgen und um Fehler zu behandeln. Azure DevOps bietet auch andere Möglichkeiten zum Anzeigen der Testinformationen:

  • Das Dashboard gibt Einblick in den Fortschritt Ihres Teams. Fügen Sie ein Widget oder auch mehrere Widgets hinzu, um testbezogene Informationen anzuzeigen:

  • Die Testanalyse bietet umfassende Einblicke in Testergebnisse, die über einen bestimmten Zeitraum gemessen wurden. Sie kann Daten wie etwa die am häufigsten fehlerhaften Tests liefern und Ihnen so dabei helfen, Problembereiche in Ihrem Test zu identifizieren.

Anzeigen von Testergebnissen im Build

Die Buildzusammenfassung bietet eine Zeitleistenansicht der wichtigsten Schritte, die im Build ausgeführt werden. Wenn Tests als Teil des Buildvorgangs ausgeführt und gemeldet wurden, wird in der Zeitleistenansicht ein Testmeilenstein angezeigt. Der Testmeilenstein enthält eine Zusammenfassung der Testergebnisse als Maß für die Erfolgsquote sowie Indikatoren für Fehler und Abbrüche (sofern vorhanden).

Anzeigen des Tests in der Zeitleistenansicht des Builds

Anzeigen von Testergebnissen im Release

In der Pipelineansicht werden alle Phasen und zugeordneten Tests angezeigt. Die Ansicht enthält eine Zusammenfassung der Testergebnisse als Maß für die Erfolgsquote sowie Indikatoren für Fehler und Abbrüche (sofern vorhanden). Diese Indikatoren sind identisch mit denen der Zeitleistenansicht des Builds, sodass eine konsistente Benutzeroberfläche für Build und Release zur Verfügung steht.

Anzeigen des Tests in der Canvasansicht für das Release

Registerkarte „Tests“

Sowohl die Build- als auch die Releasezusammenfassung enthält Details zur Testausführung. Wählen Sie Testzusammenfassung aus, um die Details auf der Registerkarte Tests anzuzeigen. Diese Seite umfasst folgende Abschnitte:

  • Zusammenfassung: Enthält wichtige quantitative Metriken für die Testausführung wie etwa die Gesamtanzahl von Tests, nicht erfolgreiche Tests, die Erfolgsquote und Ähnliches. Außerdem stehen hier auch differenzielle Indikatoren für Veränderungen im Vergleich zur vorherigen Ausführung zur Verfügung.

  • Ergebnisse: Listet alle Tests auf, die als Teil des aktuellen Builds oder Release ausgeführt und gemeldet wurden. In der Standardansicht werden nur die nicht erfolgreichen und abgebrochenen Tests angezeigt, um den Fokus auf Tests zu richten, die eine Aktivität erfordern. Mithilfe der verfügbaren Filter können jedoch auch andere Ergebnisse ausgewählt werden.

  • Details: Eine Liste von Tests, die Sie sortieren, gruppieren, durchsuchen und filtern können, um die benötigten Testergebnisse zu finden.

Anzeigen der Registerkarte „Tests“

Wählen Sie eine beliebige Testausführung oder ein beliebiges Ergebnis aus, um den Detailbereich anzuzeigen, in dem zusätzliche Informationen angezeigt werden, die für die Problembehandlung erforderlich sind – beispielsweise die Fehlermeldung, die Stapelüberwachung, Anlagen, Arbeitselemente, den historischen Trend und Ähnliches.

Anzeigen der Registerkarte „Details“

Tipp

Wenn Sie die Aufgabe „Visual Studio-Test“ zum Ausführen von Tests verwenden, wird die auf der Grundlage von Tests protokollierte Diagnoseausgabe (mit einer beliebigen Methode vom Typ „Console.WriteLine“, „Trace.WriteLine“ oder „TestContext.WriteLine“) als Anlage für einen nicht erfolgreichen Test angezeigt.

Die folgenden Funktionen der Registerkarte Tests tragen zur Verbesserung der Produktivität und Problembehandlung bei:

Filtern von großen Testergebnissen

Mit der Zeit sammeln sich immer mehr Tests an, sodass bei großen Anwendungen problemlos mehrere zehntausend Tests zusammenkommen können. Bei diesen Anwendungen mit sehr vielen Tests kann es schwierig sein, durch die Ergebnisse zu navigieren, um Testfehler zu identifizieren, Grundursachen zuzuordnen oder die Zuständigkeit für Probleme zu ermitteln. Mithilfe von Filtern können Sie schnell zu den für Sie relevanten Testergebnissen navigieren. Sie können nach Testname, Ergebnis (nicht erfolgreich, bestanden usw.), Testdateien (Dateien mit Tests) und Besitzer*in (für Testdateien) filtern. Alle Filterkriterien sind von Natur aus kumulativ.

Filtern umfangreicher Testergebnisse

Darüber hinaus können Sie mit verschiedenen Optionen für die Gruppierung wie Testlauf, Testdatei, Priorität, Anforderung usw. die Ansicht Ergebnisse ganz nach Ihren Anforderungen strukturieren.

Testschuldenverwaltung mit Fehlern

Um Ihre Testschulden für nicht erfolgreiche oder zeitintensive Tests zu verwalten, können Sie einen Fehler erstellen oder einem vorhandenen Fehler Daten hinzufügen und alle zugehörigen Arbeitselemente auf der Registerkarte „Arbeitselement“ anzeigen.

Immersive Problembehandlung

Fehlermeldungen und Stapelüberwachungen sind lang und benötigen genügend Platz, um die Details während der Problembehandlung anzeigen zu können. Um eine umfassende Problembehandlung zu ermöglichen, kann die Ansicht Details auf die vollständige Seitenansicht erweitert werden. Gleichzeitig können die erforderlichen Vorgänge weiterhin im Kontext ausgeführt werden. Beispiele wären etwa die Fehlererstellung oder die Anforderungszuordnung für das ausgewählte Testergebnis.

Bereichsansicht mit vollständiger Seite

Problembehandlungsdaten für Testfehler

Für Testfehler sind Fehlermeldungen und Stapelüberwachungen für die Problembehandlung verfügbar. Außerdem können Sie sich auf der Registerkarte Anlagen alle dem Testfehler zugeordneten Anlagen ansehen.

Testschuldenverwaltung

Sie können einen Fehler erstellen oder etwas zu einem bereits vorhandenen Fehler hinzufügen, um die Testschulden für Fehler oder zeitintensive Tests zu verwalten. Auf der Registerkarte Arbeitselemente werden alle Fehler und Anforderungen im Zusammenhang mit einem Test aufgeführt, damit Sie die Anforderungsauswirkungen analysieren, sich über den Status informieren und ermitteln können, wer an dem Fehler arbeitet.

Der Verlauf der Testausführung kann aussagekräftige Einblicke in die Zuverlässigkeit oder Leistung von Tests liefern. Bei der Problembehandlung für einen Fehlers ist es hilfreich zu wissen, wie ein Test in der Vergangenheit abgeschnitten hat. Auf der Registerkarte Tests steht der Testverlauf im Kontext mit den Testergebnissen bereit. Die Testverlaufsinformationen werden für den Build bzw. für das Release progressiv verfügbar gemacht – von der aktuellen Buildpipeline für andere Branches oder von der aktuellen Phase für andere Phasen.

Anzeigen historischer Trends

Anzeigen der Ausführung laufender Tests

Die Ausführung von Tests (beispielsweise Integrations- und Funktionstests) kann lange dauern. Daher ist es wichtig, für die Testausführung jederzeit den aktuellen Status oder den Status in Quasi-Echtzeit anzeigen zu können. Selbst in Fällen, in denen Tests schnell ausgeführt werden, ist es nützlich, den Status der relevanten Testergebnisse so früh wie möglich zu kennen – insbesondere, wenn Fehler auftreten. Dank der Ansicht In Bearbeitung müssen Sie nicht mehr warten, bis die Testausführung abgeschlossen ist. Die Ergebnisse sind in Quasi-Echtzeit verfügbar, während die Ausführung voranschreitet, sodass Sie Aktionen schneller ausführen können. Sie können einen Fehler debuggen, einen Fehler protokollieren oder die Pipeline abbrechen.

Releaseansicht „In Bearbeitung“

Hinweis

Das Feature ist derzeit sowohl für Builds als auch für Releases verfügbar, wenn die Aufgabe Visual Studio-Test in einem Auftrag mit mehreren Agents verwendet wird. In einem späteren Release wird es auch für Aufträge mit einem einzelnen Agent verfügbar gemacht.

Die folgende Ansicht zeigt die Testzusammenfassung In Bearbeitung in einem Release und meldet die Gesamtanzahl von Tests sowie die Anzahl von Testfehlern zu einem bestimmten Zeitpunkt. Die Testfehler sind für die Problembehandlung, für die Erstellung von Fehlern und für andere geeignete Aktionen verfügbar.

Zusammenfassungsansicht „In Bearbeitung“

Anzeigen zusammengefasster Testergebnisse

Während der Testausführung kann ein Test mehrere Instanzen oder Tests erzeugen, die zum Gesamtergebnis beitragen. Einige Beispiele dafür sind Tests, die erneut ausgeführt werden, Tests, die aus einer geordneten Kombination anderer Tests bestehen (Testreihen), oder Tests mit unterschiedlichen Instanzen basierend auf einem Eingabeparameter (datengesteuerte Tests).

Da diese Tests zusammenhängen, müssen sie zusammen mit dem Gesamtergebnis der einzelnen Instanzen oder Tests gemeldet werden. Diese Testergebnisse werden auf der Registerkarte Tests als zusammengefasstes Testergebnis gemeldet:

  • Fehlerhafte Tests erneut ausführen: In der neuesten Version der Aufgabe Visual Studio-Test können nicht erfolgreiche Tests erneut ausgeführt werden. Während einer erneuten Ausführung können mehrere Versuche für einen nicht erfolgreichen Test durchgeführt werden, und jeder Fehler kann aufgrund des nicht deterministischen Verhaltens des Tests eine andere Grundursache haben. Testberichte enthalten eine kombinierte Ansicht für alle Versuche einer erneuten Ausführung sowie das Gesamtergebnis des Tests als zusammengefasste Einheit. Darüber hinaus unterstützen die Testverwaltungs-APIs jetzt die Möglichkeit, zusammengefasste Testergebnisse zu veröffentlichen und abzufragen.

    Erneutes Ausführen nicht erfolgreicher Tests

  • Datengesteuerte Tests: Ähnlich wie bei der erneuten Ausführung nicht erfolgreicher Tests werden alle Iterationen datengesteuerter Tests unter diesem Test in einer zusammengefassten Ansicht gemeldet. Die zusammengefasste Ansicht ist auch für Testreihen (.orderedtest in Visual Studio) verfügbar.

    Datengesteuerter Test

Hinweis

Metriken im Abschnitt „Testzusammenfassung“ wie etwa die Gesamtzahl von Tests oder die Anzahl bestandener oder nicht erfolgreicher Tests werden unter Verwendung der Stammebene des zusammengefassten Testergebnisses berechnet.

Anzeigen abgebrochener Tests

Die Testausführung kann aus verschiedenen Gründen abgebrochen werden. Beispiele wären etwa fehlerhafter Testcode, Fehler in der zu testenden Quelle oder Probleme mit der Umgebung. Unabhängig vom Grund für den Abbruch ist es wichtig, das Verhalten diagnostizieren und die Grundursache ermitteln zu können. Die abgebrochenen Tests und Testläufe können zusammen mit den abgeschlossenen Ausführungen auf der Registerkarte Tests angezeigt werden.

Anzeigen beendeter Tests

Hinweis

Das Feature ist derzeit sowohl für Builds als auch für Releases verfügbar, wenn die Aufgabe Visual Studio-Test in einem Auftrag mit mehreren Agents verwendet wird oder wenn Testergebnisse mithilfe der Testverwaltungs-APIs veröffentlicht werden. In einem späteren Release wird es auch für Aufträge mit einem einzelnen Agent verfügbar gemacht.

Automatisch abgeleitete Testergebnisse

Azure DevOps kann bei einigen unterstützten Testframeworks automatisch die Ausgabe von Tests ableiten, die in Ihren Pipelines ausgeführt werden. Diese automatisch abgeleiteten Testberichte erfordern keine spezifische Konfiguration Ihrer Pipelines und ermöglichen es, ohne Aufwand mit der Testberichterstattung zu beginnen.

Beispiel für einen automatisch abgeleiteten Testbericht

Die Liste der Runner, für die Testergebnisse automatisch abgeleitet werden, finden Sie hier.

Da in solchen abgeleiteten Berichten nur begrenzte Testmetadaten vorhanden sind, sind ihre Features und Funktionen eingeschränkt. Folgende Features stehen bei abgeleiteten Testberichten nicht zur Verfügung:

  • Gruppieren der Testergebnisse nach Testdatei, Besitzer*in, Priorität und anderen Feldern
  • Durchsuchen und Filtern der Testergebnisse
  • Überprüfen der Details bestandener Tests
  • Anzeigen einer Vorschau von Anlagen, die während der Tests generiert wurden, auf der Webbenutzeroberfläche
  • Zuordnen eines Testfehlers zu einem neuen Fehler oder Anzeigen der Liste zugeordneter Arbeitselemente für diesen Fehler
  • Anzeigen von Analysen für das Testen in Pipelines (Build-on-Build)

Hinweis

Einige Runner (beispielsweise Mocha) verfügen über mehrere integrierte Konsolenberichterstatter wie dot-matrix (Punktmatrix) und progress-bar (Statusanzeige). Wenn Sie eine nicht standardmäßige Konsolenausgabe für Ihren Test Runner konfiguriert haben oder einen benutzerdefinierten Berichterstatter verwenden, kann Azure DevOps die Testergebnisse nicht ableiten. Die Lösung kann nur die Ergebnisse des Standardberichterstatters ableiten.

Hilfe und Support