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.
Dieser Artikel enthält einen zentralen Einstiegspunkt für MTP-Befehlszeilenoptionen.
Important
Plattformoptionen stehen von MTP selbst zur Verfügung. Erweiterungsoptionen sind nur verfügbar, wenn jede Zieltestanwendung das Erweiterungspaket registriert, das sie bereitstellt. Fügen Sie das Paket direkt hinzu, oder verwenden Sie eine Test-SDK-Konfiguration oder ein Profil, die es enthält. Wenn eine Testanwendung die Erweiterung nicht registriert, schlägt die Ausführung mit Dem Exitcode 5 fehl, da die Option nicht erkannt wird.
Plattformoptionen
@Gibt den Namen der Antwortdatei an. Der Name der Antwortdatei muss dem `
@`-Zeichen, ohne Leerzeichen zwischen dem `@`-Zeichen und dem Namen der Antwortdatei, direkt folgen.Optionen in einer Antwortdatei werden so interpretiert, als ob sie an dieser Stelle in der Befehlszeile vorhanden wären. Sie können das umgekehrte Schrägstrichzeichen
\nicht verwenden, um Linien zu verketten. Die Verwendung einer Antwortdatei ist bei sehr langen Befehlen hilfreich, die die Terminalgrenzen überschreiten können. Sie können eine Antwortdatei mit Inline-Befehlszeilenargumenten kombinieren. Beispiel:./TestExecutable.exe @"filter.rsp" --timeout 10swobei filter.rsp den folgenden Inhalt haben kann:
--filter "A very long filter"Alternativ können Sie mit einer einzelnen RSP-Datei wie folgt sowohl Timeout als auch Filter angeben:
./TestExecutable.exe @"arguments.rsp"--filter "A very long filter" --timeout 10sHinweis
Bei Verwendung
dotnet testdes SDK-Befehlszeilenparsers wird ein Token-pro-Line-Ansatz verwendet, bei dem jede Zeile in der Antwortdatei als einzelnes Token behandelt wird. In diesem Fall muss jedes Argument in einer separaten Zeile stehen:--filter A very long filter --timeout 10s--config-fileGibt eine testconfig.json-Datei an.
--debugHält die Testausführung beim Start an, damit Sie einen Debugger an den Testprozess anfügen können. Entspricht dem Festlegen der
TESTINGPLATFORM_WAIT_ATTACH_DEBUGGERUmgebungsvariablen auf1. Wird auf Browserplattformen nicht unterstützt.Hinweis
Diese Option ist ab Version 1.9.0 in MTP verfügbar. Sie ersetzt die vorherige
--debug-wait-attachOption (eingeführt in MTP 1.6.0); der alte Name wurde entfernt und darf nicht mehr verwendet werden.--diagnosticAktiviert die Diagnoseprotokollierung. Die Standardprotokollebene ist
Trace. Für jede Testquelle schreibt MTP<asm>_<tfm>_<arch>_<timestamp>.diag. Wenn ein Zeitstempel kollidiert, fügt MTP einen Prozess- und Leistungsindikatorsuffix hinzu, anstatt die vorhandene Datei zu überschreiben.--diagnostic-synchronous-writeZwingt den integrierten Dateilogger, Protokolle synchron zu schreiben. Nützlich für Szenarien, in denen keine Protokolleinträge verloren gehen sollen (bei Prozessabsturz). Dadurch wird die Testausführung verlangsamt.
Hinweis
Verfügbar in MTP ab Version 2.0.0. Sie ersetzt die vorherige
--diagnostic-filelogger-synchronouswriteOption, die in MTP 2.0.0 entfernt wurde.--diagnostic-output-directoryDas Ausgabeverzeichnis der Diagnoseprotokollierung. Wird es nicht angegeben, wird die Datei im Standardverzeichnis TestResults generiert.
--diagnostic-file-prefixDas Präfix für den Namen der Protokolldatei. Der Standardwert lautet
<asm>_<tfm>_<arch>.Hinweis
Verfügbar in MTP ab Version 2.0.0. Sie ersetzt die vorherige
--diagnostic-output-fileprefixOption, die in MTP 2.0.0 entfernt wurde.--diagnostic-verbosityDefiniert den Ausführlichkeitsgrad, wenn die Option
--diagnosticverwendet wird. Verfügbare Werte sindTrace,Debug,Information,Warning,ErroroderCritical.--enable-dynamic-extensionsAktiviert das Laden von Erweiterungen, die von
*.testingplatformextensions.jsonManifestdateien neben der Testanwendung deklariert werden. Dynamische Erweiterungen sind standardmäßig deaktiviert. Sicherheitsanforderungen und das Manifestschema finden Sie unter "Dynamisches Laden von Erweiterungen".Hinweis
Diese Option ist ab Version 2.4.0 in MTP verfügbar.
--exit-on-process-exitBeenden Sie den Testprozess, wenn ein abhängiger Prozess beendet wird. Die PID muss angegeben werden.
--filter-uidFiltert die auszuführenden Tests anhand ihrer Testknoten-UIDs. Akzeptiert eine oder mehrere UIDs.
Hinweis
Diese Option ist ab Version 1.8.0 in MTP verfügbar. Ab MTP 2.3.0 können Sie
--filter-uidnicht mit--treenode-filterkombinieren; die Angabe beider Optionen führt bei der Befehlszeilenvalidierung zu einem Fehler mit dem ExitcodeInvalidCommandLine.--helpGibt eine Beschreibung zur Verwendung des Befehls aus.
--ignore-exit-codeErlaubt, dass einige Nicht-Null-Exitcodes ignoriert werden und stattdessen als
0zurückgegeben werden. Weitere Informationen finden Sie im Abschnitt Ignorieren spezifischer Exitcodes.--infoZeigt erweiterte Informationen zur .NET Testanwendung an, z. B.:
- Die Plattform.
- Zur Umgebung.
- Jeder registrierte Kommandozeilenanbieter, wie z. B.
name,version,descriptionundoptions. - Jedes registrierte Tool, wie z. B. seine
command,name,version,descriptionund alle Kommandozeilen-Anbieter.
Dieses Feature wird verwendet, um Erweiterungen zu verstehen, die dieselbe Befehlszeilenoption registrieren, oder um die Änderungen bei den verfügbaren Optionen zwischen mehreren Versionen einer Erweiterung (oder der Plattform) zu ermitteln.
--list-testsListet die verfügbaren Tests auf, ohne sie auszuführen. Verwendet optional ein Argument, das das Ausgabeformat steuert:
text(Standard, lesbar) oderjson.Hinweis
Das
jsonAusgabeformat ist ab Version 2.3.0 in MTP verfügbar.--maximum-failed-testsGibt die maximale Anzahl von Testfehlern an, bei deren Erreichen der Testlauf abgebrochen wird. Zur Unterstützung dieses Schalters müssen die Autoren des Frameworks die Funktionalität
IGracefulStopTestExecutionCapabilityimplementieren. Der Exit-Code bei Erreichen dieser Anzahl von Testfehlern ist 13. Weitere Informationen finden Sie unter MTP-Exitcodes.Hinweis
Dieses Feature ist ab Version 1.5 in MTP verfügbar.
--minimum-expected-testsGibt die Mindestanzahl der Tests an, die ausgeführt werden müssen. Wenn die Ausführung weniger Tests ausführt, einschließlich Null, wird sie mit Code
9beendet. Ein explizites Minimum ersetzt--zero-tests-policy.--no-bannerDeaktiviert das Startbanner, die Copyrightnachricht und das Telemetriebanner. Derselbe Effekt kann durch die
TESTINGPLATFORM_NOBANNERVariablen oderDOTNET_NOLOGOumgebungsvariablen erreicht werden.--results-directoryDas Verzeichnis, in dem die Testergebnisse gespeichert werden. Wenn das angegebene Verzeichnis noch nicht existiert, wird es erstellt. Der Standardwert ist
TestResultsim Verzeichnis, das die Testanwendung enthält.--serverStartet die Testanwendung im JSON-RPC Servermodus für die Editor-, IDE- oder Toolintegration. Lassen Sie den Wert aus oder verwenden Sie
jsonrpc. Informationen zu einem unterstützten Client, der nur als Quelle fungiert, finden Sie unter MTP-Servermodus.Important
Der
dotnettestcliWert und die zugehörigen Transportargumente sind intern für die .NET SDK-Integration. Übergeben Sie sie nicht manuell.--show-slowest-testsZeigt die angeforderte Anzahl der langsamsten Tests in der Terminalzusammenfassung an. Wenn eine Ausführung mehrere Testmodule enthält, meldet MTP die langsamsten Tests für jedes Modul.
Hinweis
Diese Option ist ab Version 2.4.0 in MTP verfügbar.
--timeoutEine globale Zeitüberschreitung für die Testausführung. Nimmt ein Argument als Zeichenfolge im Format
<value>[h|m|s]an, wobei<value>ein Float ist.--treenode-filterFiltert die auszuführenden Tests mithilfe eines Baumfilterausdrucks. Baumfilter bieten für anspruchsvolle Szenarien flexiblere Abgleichmöglichkeiten als
--filter.Hinweis
Ab MTP 2.3.0 können Sie
--treenode-filternicht mit--filter-uidkombinieren; die Angabe beider Optionen führt bei der Befehlszeilenvalidierung zu einem Fehler mit dem ExitcodeInvalidCommandLine.--zero-tests-policySteuert, ob eine Ausführung, die keine Tests ausführt, weil jeder Test übersprungen wurde, als Fehler behandelt wird. Gültige Werte sind
allow-skipped(Standard) undstrict. Mitallow-skippedist eine vollständig übersprungene Ausführung erfolgreich. Beistrict, schlägt es mit Exit-Code8fehl. Ein expliziter--minimum-expected-testsWert ersetzt diese Richtlinie und verwendet Exitcode9, wenn das Minimum nicht erfüllt ist.Hinweis
Diese Option ist ab Version 2.3.0 in MTP verfügbar.
Erweiterungsoptionen nach Szenario
Verwenden Sie die folgende Tabelle, um das Paket und die Optionen der einzelnen Erweiterungen zu finden. Ein Test-SDK-Profil kann ein Paket anstelle eines direkten Paketverweises bereitstellen.
| Scenario | Erforderliche Komponente | Funktionsdokumentation |
|---|---|---|
| Erfassung der Code-Abdeckung |
Microsoft.Testing.Extensions.CodeCoverage oder coverlet.MTP |
Codeabdeckung |
| Sammeln von Daten eines Absturzes oder von Blockaden |
Microsoft.Testing.Extensions.CrashDump oder Microsoft.Testing.Extensions.HangDump |
Daten eines Absturzes oder von Blockaden |
| Generieren von Testberichten | Das Erweiterungspaket für das ausgewählte Format, z. B. Microsoft.Testing.Extensions.TrxReport |
Testberichte |
| Anpassen der Terminalausgabe | MTP Core (kein zusätzliches Paket) | Terminalausgabe |
| Wiederholen fehlgeschlagener Tests | Microsoft.Testing.Extensions.Retry |
Wiederholen. |
Entdecken von Optionen in Ihrer Test-App
Führen Sie Ihr Testprogramm mit --help aus, oder führen Sie dotnet test --help im MTP-Modus aus, um die für Ihren aktuellen Erweiterungssatz verfügbaren Optionen aufzulisten.
Für eine erweiterte Diagnose von registrierten Anbietern und Optionen führen Sie --info aus.