Udostępnij za pośrednictwem


Używanie biblioteki Microsoft.Testing.Platform z dotnet test

W tym artykule opisano sposób uruchamiania dotnet test testów w przypadku korzystania z programu Microsoft.Testing.Platformoraz różne opcje, które są dostępne do skonfigurowania danych wyjściowych programu MSBuild generowanych podczas uruchamiania testów za pośrednictwem witryny Microsoft.Testing.Platform.

W tym artykule pokazano, jak używać dotnet test polecenia do uruchamiania wszystkich testów w rozwiązaniu (*.sln), które używa metody Microsoft.Testing.Platform.

dotnet test Integracji

Polecenie dotnet test to sposób uruchamiania testów z rozwiązań, projektów lub już skompilowanych zestawów. Microsoft.Testing.Platform łączy się z tą infrastrukturą, aby zapewnić ujednolicony sposób uruchamiania testów, szczególnie w przypadku migracji z programu VSTest do Microsoft.Testing.Platformprogramu .

dotnet test integracja — tryb VSTest

Microsoft.Testing.Platform Zapewnia warstwę zgodności (VSTest Bridge) do bezproblemowej dotnet test pracy.

Testy można uruchomić, uruchamiając następujące polecenie:

dotnet test

Ta warstwa uruchamia test za pośrednictwem narzędzia VSTest i integruje się z nim na poziomie adaptera vsTest Test Framework.

dotnet test — Tryb Microsoft.Testing.Platform

Domyślnie program VSTest służy do uruchamiania Microsoft.Testing.Platform testów. Pełne ustawienie można włączyć Microsoft.Testing.Platform , określając <TestingPlatformDotnetTestSupport>true</TestingPlatformDotnetTestSupport> ustawienie w projekcie. To ustawienie powoduje wyłączenie programu VSTest i dzięki zależności przechodniej pakietowi NuGet Microsoft.Testing.Platform.MSBuild spowoduje bezpośrednie uruchomienie całego Microsoft.Testing.Platform projektu testów uprawnionych w rozwiązaniu. Działa bezproblemowo, jeśli przejdziesz bezpośredni Microsoft.Testing.Platform projekt testowy.

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>net8.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>

    <IsPackable>false</IsPackable>
    <IsTestProject>true</IsTestProject>

    <OutputType>Exe</OutputType>
    <EnableMSTestRunner>true</EnableMSTestRunner>

    <!-- Add this to your project file. -->
    <TestingPlatformDotnetTestSupport>true</TestingPlatformDotnetTestSupport>

  </PropertyGroup>

  <!-- ... -->

</Project>

W tym trybie dodatkowe parametry przebiegu nie są udostępniane bezpośrednio za pośrednictwem wiersza polecenia. Należy je podać jako właściwość MSBuild o nazwie TestingPlatformCommandLineArguments:

dotnet test -p:TestingPlatformCommandLineArguments=" --minimum-expected-tests 10 "

Dodatkowe opcje programu MSBuild

Integracja z programem MSBuild udostępnia opcje, które można określić w projekcie użytkownika lub za pośrednictwem właściwości globalnych w wierszu polecenia, takich jak -p:TestingPlatformShowTestsFailure=true.

Są to dostępne opcje:

Pokaż błąd na test

Domyślnie błędy testów są sumowane w pliku .log , a pojedynczy błąd na projekt testowy jest zgłaszany w programie MSBuild.

Aby wyświetlić błędy dla testu, określ -p:TestingPlatformShowTestsFailure=true w wierszu polecenia lub dodaj <TestingPlatformShowTestsFailure>true</TestingPlatformShowTestsFailure> właściwość do pliku projektu.

W wierszu polecenia:

dotnet test -p:TestingPlatformShowTestsFailure=true

Lub w pliku projektu:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>net8.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>

    <IsPackable>false</IsPackable>
    <IsTestProject>true</IsTestProject>

    <OutputType>Exe</OutputType>
    <EnableMSTestRunner>true</EnableMSTestRunner>

    <TestingPlatformDotnetTestSupport>true</TestingPlatformDotnetTestSupport>

    <!-- Add this to your project file. -->
    <TestingPlatformShowTestsFailure>true</TestingPlatformShowTestsFailure>

  </PropertyGroup>

  <!-- ... -->

</Project>

Pokaż kompletne dane wyjściowe platformy

Domyślnie wszystkie dane wyjściowe konsoli, które są przechwytywane i ukryte przed użytkownikiem, są przechwytywane przez plik wykonywalny bazowego pliku wykonywalnego. Obejmuje to baner, informacje o wersji i sformatowane informacje o teście.

Aby wyświetlić te informacje razem z użyciem<TestingPlatformCaptureOutput>false</TestingPlatformCaptureOutput> danych wyjściowych programu MSBuild.

Ta opcja nie ma wpływu na sposób przechwytywania danych wyjściowych użytkownika zapisanych przez Console.WriteLine użytkownika lub innych podobnych sposobów zapisu w konsoli programu .

W wierszu polecenia:

dotnet test -p:TestingPlatformCaptureOutput=false

Lub w pliku projektu:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>net8.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>

    <IsPackable>false</IsPackable>
    <IsTestProject>true</IsTestProject>

    <OutputType>Exe</OutputType>
    <EnableMSTestRunner>true</EnableMSTestRunner>

    <TestingPlatformDotnetTestSupport>true</TestingPlatformDotnetTestSupport>

    <!-- Add this to your project file. -->
    <TestingPlatformCaptureOutput>false</TestingPlatformCaptureOutput>

  </PropertyGroup>

  <!-- ... -->

</Project>