Freigeben über


Ausführen und Debuggen von Tests

Microsoft.Testing.Platform--Testprojekte werden als ausführbare Dateien erstellt, die direkt ausgeführt (oder debuggt) werden können. Es gibt keine zusätzliche Testausführungskonsole und keinen zusätzlichen Befehl. Die App wird mit einem Nonzero-Exitcode beendet, wenn ein Fehler auftritt, der für die meisten ausführbaren Dateien typisch ist. Weitere Informationen zu den bekannten Exitcodes finden Sie unter Microsoft.Testing.Platform-Exitcodes.

Tipp

Mithilfe der Befehlszeilenoption können Sie einen bestimmten --ignore-exit-code ignorieren.

Sie können auch Befehlszeilenoptionen festlegen, die für ein bestimmtes Testprojekt in der Projektdatei mit der TestingPlatformCommandLineArguments MSBuild-Eigenschaft gelten. Ein gängiger Anwendungsfall ist für Testprojekte mit ignorierten Tests, die normalerweise mit Exitcode 8 beendet werden (die Testsitzung hat null Tests ausgeführt). In diesem Szenario können Sie folgendes unter einer PropertyGroup in Ihrer Projektdatei hinzufügen:

<TestingPlatformCommandLineArguments>$(TestingPlatformCommandLineArguments) --ignore-exit-code 8</TestingPlatformCommandLineArguments>

Von Bedeutung

Standardmäßig sammelt Microsoft.Testing.Platform Telemetrie. Weitere Informationen und Optionen zum Deaktivieren finden Sie unter Microsoft.Testing.Platform-Telemetrie.

Das Veröffentlichen des Testprojekts mithilfe von dotnet publish und das direkte Ausführen der App ist eine weitere Möglichkeit, Ihre Tests auszuführen. Führen Sie z. B. ./Contoso.MyTests.exe aus. In einigen Szenarien ist es auch praktikabel, dotnet build zur Erstellung der ausführbaren Datei zu verwenden, es kann jedoch auch Grenzfälle geben, z. B. Native AOT.

dotnet run verwenden

Der dotnet run-Befehl kann zum Erstellen und Ausführen des Testprojekts verwendet werden. Dies ist die einfachste, obwohl manchmal langsamste Möglichkeit, Ihre Tests auszuführen. Die Verwendung von dotnet run ist praktisch, wenn Sie Tests lokal bearbeiten und ausführen, da sichergestellt wird, dass das Testprojekt bei Bedarf neu erstellt wird. dotnet run wird das Projekt auch automatisch im aktuellen Ordner finden.

dotnet run --project Contoso.MyTests

Weitere Informationen zu dotnet run finden Sie unter dotnet run.

dotnet exec verwenden

Der dotnet exec- oder dotnet-Befehl wird verwendet, um ein bereits erstelltes Testprojekt auszuführen (oder zu nutzen). Dies ist eine Alternative zum direkten Ausführen der Anwendung. dotnet exec erfordert einen Pfad zur integrierten Testprojekt-DLL.

dotnet exec Contoso.MyTests.dll

oder

dotnet Contoso.MyTests.dll

Hinweis

Wenn Sie den Pfad zur ausführbaren Datei des Testprojekts (*.exe) angeben, tritt ein Fehler auf:

Error:
  An assembly specified in the application dependencies manifest
  (Contoso.MyTests.deps.json) has already been found but with a different
  file extension:
    package: 'Contoso.MyTests', version: '1.0.0'
    path: 'Contoso.MyTests.dll'
    previously found assembly: 'S:\t\Contoso.MyTests\bin\Debug\net10.0\Contoso.MyTests.exe'

Weitere Informationen zu dotnet exec finden Sie unter dotnet exec.

dotnet test verwenden

Microsoft.Testing.Platform bietet eine Kompatibilitätsschicht für vstest.console.exe und dotnet test und stellt so sicher, dass Sie Ihre Tests wie zuvor ausführen können, während gleichzeitig ein neues Ausführungsszenario aktiviert wird.

dotnet test Contoso.MyTests.dll

Siehe auch