Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Für diese Features müssen zusätzliche NuGet-Pakete installiert werden, wie in den einzelnen Abschnitten beschrieben.
Tipp
Bei Verwendung von Microsoft.Testing.Platform.MSBuild (transitiv von MSTest, NUnit und xUnit runners eingeschlossen) werden diese Erweiterungen automatisch registriert, wenn Sie ihre NuGet-Pakete installieren – keine Codeänderungen erforderlich. Die in diesem Artikel angegebene manuelle Registrierung ist nur erforderlich, wenn Sie den automatisch generierten Einstiegspunkt durch Festlegen <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>deaktiviert haben.
Dateinamen von Berichten
Jede Berichtserweiterung schreibt die Datei in das Verzeichnis der Testergebnisse, das Sie mit der --results-directory Option festlegen können. Verwenden Sie die entsprechende --report-*-filename Option, um den Namen außer Kraft zu setzen. Jeder Berichtabschnitt listet den Standardnamen für diesen Bericht auf.
Ein Dateiname kann einen relativen Pfad enthalten, der im Verzeichnis der Testergebnisse verbleibt, und er kann die folgenden Ersetzungselemente (Platzhalter) verwenden:
| Platzhalter | Description |
|---|---|
{asm} |
Name der Eintragsassembly oder unknown wenn er nicht verfügbar ist. |
{tfm} |
Zur Laufzeit erkannter Zielframeworkbezeichner, wie z. B. net9.0. |
{arch} |
Prozessarchitektur, wie x64, x86 oder arm64. |
{pname} |
Prozessname |
{pid} |
Prozess-ID. |
{time} |
Präziser Zeitstempel. |
Beispielsweise gibt --report-trx-filename "{asm}_{tfm}_{arch}.trx" den Standardnamen „TRX“ wieder.
Hinweis
Bei Platzhalternamen wird die Groß-/Kleinschreibung beachtet und Kleinbuchstaben verwendet. Platzhalterunterstützung für Berichtsdateinamen ist ab Version 2.3.0 in MTP verfügbar.
Visual Studio Testberichte (TRX)
Die Visual Studio Testergebnisdatei (oder TRX) ist das Standardformat für die Veröffentlichung von Testergebnissen. Für diese Erweiterung ist das NuGet-Paket "Microsoft.Testing.Extensions.TrxReport " erforderlich.
Manuelle Registrierung
var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddTrxReportProvider();
Hinweis
Wenn Sie die manuelle Registrierung verwenden, registrieren Sie den TRX-Berichtsanbieter zuletzt. Die aktuelle Implementierung hängt von der Registrierungsreihenfolge ab, sodass durch die Registrierung nach allen anderen Erweiterungen sichergestellt wird, dass alle Testdaten erfasst werden.
Hinweis
Verfügbar in MTP ab Version 1.9.0 enthält der TRX-Bericht das Testfeld Description .
Hinweis
In MTP ist ab Version 2.3.0 verfügbar, dass TRX-Ergebnisse im Verlauf der Ausführung auf den Datenträger geschrieben werden. Wenn der Testhost abstürzt, behält die TRX-Datei die gesammelten Ergebnisse vor dem Absturz bei.
Options
| Option | Description |
|---|---|
--report-trx |
Generiert den TRX-Bericht. |
--report-trx-filename |
Der Name des generierten TRX-Berichts. Ab MTP 2.3.0 ist der Standardwert das deterministische {asm}_{tfm}_{arch}.trx Formular; vor MTP 2.3.0 war <UserName>_<MachineName>_<yyyy-MM-dd_HH_mm_ss.fffffff>.trxder Standardwert . Informationen zum Anpassen des Namens finden Sie unter Berichtsdateinamen. |
Der Bericht wird im Standardordner TestResults gespeichert, der über das --results-directory Befehlszeilenargument angegeben werden kann.
HTML-Berichte
Der HTML-Bericht erstellt eine interaktive, eigenständige HTML-Datei für eine Testsitzung. Für diese Erweiterung ist das Microsoft.Testing.Extensions.HtmlReport-NuGet-Paket erforderlich.
Hinweis
Verfügbar in MTP ab Version 2.3.0. Diese Erweiterung ist experimentell, und die Optionen und das Ausgabeformat können sich in einer zukünftigen Version ändern.
Manuelle Registrierung
var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddHtmlReportProvider();
Options
| Option | Description |
|---|---|
--report-html |
Generiert den HTML-Bericht. |
--report-html-filename |
Der Name des generierten HTML-Berichts. Der Wert muss mit .html enden. Der Standardwert lautet {asm}_{tfm}_{arch}.html. Informationen zum Anpassen des Namens finden Sie unter Berichtsdateinamen. Erfordert --report-html. |
JUnit-Berichte
Der JUnit-Bericht erstellt eine JUnit-kompatible XML-Datei für eine Testsitzung. Diese Erweiterung erfordert das NuGet-Paket Microsoft.Testing.Extensions.JUnitReport.
Hinweis
Verfügbar in MTP ab Version 2.3.0. Diese Erweiterung ist experimentell, und die Optionen und das Ausgabeformat können sich in einer zukünftigen Version ändern.
Manuelle Registrierung
var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddJUnitReportProvider();
Options
| Option | Description |
|---|---|
--report-junit |
Generiert den JUnit-XML-Bericht. |
--report-junit-filename |
Der Name des generierten JUnit-XML-Berichts. Der Wert muss mit .xml enden. Der Standardwert lautet {asm}_{tfm}_{arch}.xml. Informationen zum Anpassen des Namens finden Sie unter Berichtsdateinamen. Erfordert --report-junit. |
CTRF-Berichte
Der CTRF-Bericht erstellt eine JSON-Datei, die das Allgemeine Testberichtsformat für eine Testsitzung verwendet. Diese Erweiterung erfordert das Microsoft.Testing.Extensions.CtrfReport-NuGet-Paket.
Hinweis
Verfügbar in MTP ab Version 2.3.0. Diese Erweiterung ist experimentell, und die Optionen und das Ausgabeformat können sich in einer zukünftigen Version ändern.
Manuelle Registrierung
var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddCtrfReportProvider();
Options
| Option | Description |
|---|---|
--report-ctrf |
Generiert den CTRF JSON-Bericht. |
--report-ctrf-filename |
Der Name des generierten CTRF JSON-Berichts. Der Wert muss mit .json enden. Der Standardwert lautet <UserName>_<MachineName>_<assembly>_<tfm>_<timestamp>.ctrf.json. Informationen zum Anpassen des Namens finden Sie unter Berichtsdateinamen. Erfordert --report-ctrf. |
Azure DevOps Berichte
Azure DevOps Berichts-Plug-In verbessert die Testausführung für Entwickler, die ihren Code auf GitHub hosten, aber auf Azure DevOps Build-Agents aufbauen. Es fügt zusätzliche Informationen zu Fehlern hinzu, um Fehler direkt in GitHub PR anzuzeigen.
Für diese Erweiterung ist das NuGet-Paket "Microsoft.Testing.Extensions.AzureDevOpsReport NuGet" erforderlich.
Manuelle Registrierung
var builder = await TestApplication.CreateBuilderAsync(args);
builder.TestHost.AddAzureDevOpsProvider();
Options
| Option | MTP-Version | Description |
|---|---|---|
--report-azdo |
1.9.0 | Aktiviert den Azure DevOps Berichtsgenerator. Fehler und Warnungen werden in ein Format geschrieben, das Azure DevOps versteht. |
--report-azdo-severity |
1.9.0 | Schweregrad, der für gemeldete Ereignisse verwendet werden soll. Gültige Werte sind error (Standard) und warning. |
--report-azdo-flaky-history |
2.3.0 | Abfragen Azure DevOps Testergebnisverlauf für die letzten N Tage (1-90) und kommentieren gemeldete Fehler mit Flakiness-Kontext. Erfordert --report-azdo. |
--report-azdo-demote-known-flaky |
2.3.0 | Stuft Fehlschläge, die im Azure DevOps-Verlaufsfenster häufig genug instabil sind (der Standardschwellenwert beträgt 25 %), von Fehlern zu Warnungen herab. Erfordert --report-azdo und --report-azdo-flaky-history. |
--report-azdo-quarantine-file |
2.3.0 | Pfad zu einer Textdatei, die in Quarantäne befindliche Testnamen oder Globmuster auflistet. Abgleichsfehler werden als Warnungen gemeldet. Erfordert --report-azdo. |
--report-azdo-summary |
2.3.0 | Schreibt am Ende des Testlaufs eine Markdown-Auftragsübersicht und lädt sie über ##vso[task.uploadsummary] hoch. Ein optionales Dateipfadargument setzt den Standardspeicherort ({testResultsDir}/azdo-summary-{tfm}.md) außer Kraft. Erfordert --report-azdo. |
--report-azdo-stackframe-filter |
2.3.0 | Fügt Regex-Muster hinzu, die mit dem vollqualifizierten Typpräfix jedes Stack-Frames abgeglichen werden und beim Ermitteln der Aufrufstelle des Benutzers, die von der Erweiterung annotiert werden soll, übersprungen werden. Die Option ist wiederholbar, bis zu 16 Muster und jedes Muster wird mit einem Timeout von 500 ms kompiliert. Diese Muster kommen zusätzlich zu den integrierten Präfixen der Erweiterung für die Implementierung von MSTest-Assertionen hinzu. Erfordert --report-azdo. |
--report-azdo-upload-artifacts |
2.3.0 | Lädt Testergebnisdateien hoch und/oder fügt Buildtags zu Azure DevOps hinzu. Gültige Werte sind off (Standard), tags-only, , filesund all. |
--report-azdo-upload-artifact-include |
2.3.0 | Schließt Dateien beim Azure-DevOps-Artefaktupload mithilfe von Glob-Mustern ein, die relativ zum Verzeichnis der Testergebnisse angegeben sind. Wird standardmäßig auf **/* festgelegt. Erfordert --report-azdo-upload-artifacts einen anderen Wert als off. |
--report-azdo-upload-artifact-exclude |
2.3.0 | Schließt Dateien aus dem Azure DevOps Artefaktupload mithilfe von Globmustern relativ zum Verzeichnis der Testergebnisse aus. Erfordert --report-azdo-upload-artifacts einen anderen Wert als off. |
--report-azdo-upload-artifact-name |
2.3.0 | Überschreibt den Namen des Azure DevOps-Artifactcontainers. Wird standardmäßig auf TestResults_{assemblyName}_{tfm} festgelegt. Erfordert --report-azdo-upload-artifacts einen anderen Wert als off. |
--publish-azdo-test-results |
2.3.0 | Veröffentlicht Testergebnisse live auf der Registerkarte Azure DevOps Tests. |
--publish-azdo-run-name |
2.3.0 | Legt einen benutzerdefinierten Azure DevOps Testausführungsnamen für die Livetestergebnisveröffentlichung fest. Erfordert --publish-azdo-test-results. |
Hinweis
In der Spalte "MTP-Version " wird die MTP-Version aufgeführt, in der jede Option zuerst in einem stabilen Build verfügbar wurde. Die Azure DevOps Erweiterung selbst wurde in MTP 1.9.0 stabil mit --report-azdo und --report-azdo-severity; die übrigen Optionen wurden in MTP 2.3.0 hinzugefügt.
Die Erweiterung erkennt automatisch, dass sie in einer CI-Umgebung (Continuous Integration) ausgeführt wird, indem sie die TF_BUILD Umgebungsvariable überprüft.
GitHub Actions Berichte
Der GitHub-Actions-Bericht gibt GitHub-Actionseigene Workflowbefehle aus, sodass Testläufe für eine erstklassige Erfahrung auf dem Runner sorgen: Loggruppen pro Assembly, Annotationen zu fehlgeschlagenen und übersprungenen Tests (sichtbar im Tab Annotations des Workflows und, wenn der Quellspeicherort ermittelt werden kann, im Diff der Files changed-Ansicht des Pull Requests), eine Markdown-Jobzusammenfassung, die an die durch GITHUB_STEP_SUMMARY referenzierte Datei angehängt wird, sowie Hinweise auf langsame Tests.
Die Erweiterung wird nur aktiviert, wenn die Ausführung auf GitHub Actions ausgeführt wird (die GITHUB_ACTIONS Umgebungsvariable isttrue) und der --report-gh Schalter festgelegt ist. Andernfalls wird nichts ausgeführt. Wenn sie aktiv ist, ist jedes Feature standardmäßig aktiviert und kann einzeln mit seiner --report-gh-* Option deaktiviert werden.
Hinweis
Verfügbar in MTP ab Version 2.3.0. Diese Erweiterung ist experimentell, und die Optionen und das Ausgabeformat können sich in einer zukünftigen Version ändern.
Manuelle Registrierung
var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddGitHubActionsProvider();
Options
| Option | MTP-Version | Description |
|---|---|---|
--report-gh |
2.3.0 | Aktiviert den GitHub Actions Berichtsgenerator, sodass testausführung Workflowbefehle ausgibt. Erfordert, dass die Ausführung auf GitHub Actions ist. |
--report-gh-groups |
2.3.0 | Aktiviert oder deaktiviert Protokollgruppen pro Baugruppe. Gültige Werte sind on (Standard) und off. Erfordert --report-gh. |
--report-gh-annotations |
2.3.0 | Aktiviert oder deaktiviert Anmerkungen für fehlgeschlagene und übersprungene Tests. Gültige Werte sind on (Standard) und off. Erfordert --report-gh. |
--report-gh-step-summary |
2.3.0 | Aktiviert oder deaktiviert das Schreiben einer Markdown-Auftragszusammenfassung in die Datei, auf die verwiesen wird GITHUB_STEP_SUMMARY. Gültige Werte sind on (Standard) und off. Erfordert --report-gh. |
--report-gh-slow-test-notices |
2.3.0 | Aktiviert oder deaktiviert Hinweise zu langsamen Tests. Gültige Werte sind on (Standard) und off. Erfordert --report-gh. |
--report-gh-slow-test-threshold |
2.3.0 | Die Dauer, die ein Test laufen kann, bevor ein Hinweis auf einen langsamen Test ausgegeben wird. Akzeptiert eine bloße Anzahl von Sekunden oder einen Wert mit einem Einheitensuffix wie 90s, oder 2m1.5h. Der Standardwert lautet 60s. Erfordert --report-gh. |