Dela via


Översikt över Microsoft.Testing.Platform

Microsoft.Testing.Platform är ett enkelt och bärbart alternativ till VSTest för att köra tester i alla kontexter, inklusive CI-pipelines (continuous integration), CLI, Visual Studio Test Explorer och VS Code Text Explorer. Microsoft.Testing.Platform är inbäddad direkt i dina testprojekt och det finns inga andra appberoenden, till exempel vstest.console eller dotnet test behövs för att köra dina tester.

Microsoft.Testing.Platformär öppen källkod. Du hittar Microsoft.Testing.Platform kod på GitHub-lagringsplatsen microsoft/testfx .

Testramverk som stöds

Köra och felsöka tester

Microsoft.Testing.Platform testprojekt skapas som körbara filer som kan köras (eller kopplas bort) direkt. Det finns inget extra test som kör konsolen eller kommandot. Appen avslutas med en icke-nollavslutskod om det finns ett fel, vilket är typiskt för de flesta körbara filer. Mer information om kända avslutningskoder finns i Microsoft.Testing.Platform exit codes (Slutkoder för Microsoft.Testing.Platform).

Viktigt!

Som standard Microsoft.Testing.Platform samlar telemetri in. Mer information och alternativ för att välja bort finns i Telemetri för Microsoft.Testing.Platform.

Att publicera testprojektet med hjälp av dotnet publish och köra appen direkt är ett annat sätt att köra dina tester. Du kan till exempel köra ./Contoso.MyTests.exe. I vissa scenarier är det också möjligt att använda dotnet build för att skapa den körbara filen, men det kan finnas gränsfall att tänka på, till exempel intern AOT.

Använda dotnet run

Kommandot dotnet run kan användas för att skapa och köra testprojektet. Det här är det enklaste, men ibland långsammaste, sättet att köra dina tester. Det är praktiskt att använda dotnet run när du redigerar och kör tester lokalt, eftersom det säkerställer att testprojektet återskapas när det behövs. dotnet run hittar också projektet automatiskt i den aktuella mappen.

dotnet run --project Contoso.MyTests

Mer information om dotnet runfinns i dotnet run.

Använda dotnet exec

Kommandot dotnet exec eller dotnet används för att köra (eller köra) ett redan byggt testprojekt. Det här är ett alternativ till att köra programmet direkt. dotnet exec kräver sökväg till den byggda testprojektdllen.

dotnet exec Contoso.MyTests.dll

or

dotnet Contoso.MyTests.dll

Kommentar

Om du anger sökvägen till testprojektets körbara (*.exe) resulterar det i ett fel:

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\net8.0\Contoso.MyTests.exe'

Mer information om dotnet execfinns i dotnet exec.

Använda dotnet test

Microsoft.Testing.Platform erbjuder ett kompatibilitetslager med vstest.console.exe och dotnet test ser till att du kan köra dina tester som tidigare när du aktiverar ett nytt körningsscenario.

dotnet test Contoso.MyTests.dll

Alternativ

I listan nedan beskrivs endast plattformsalternativen. Om du vill se de specifika alternativen för varje tillägg kan du antingen gå till sidan med tilläggsdokumentationen eller använda --help alternativet .

  • --diagnostic

Aktiverar diagnostikloggning. Standardloggnivån är Trace. Filen skrivs i utdatakatalogen med följande namnformat, log_[MMddHHssfff].diag.

  • --diagnostic-filelogger-synchronouswrite

Tvingar den inbyggda filloggaren att synkront skriva loggar. Användbart för scenarier där du inte vill förlora några loggposter (om processen kraschar). Detta gör testkörningen långsammare.

  • --diagnostic-output-directory

Utdatakatalogen för diagnostikloggningen, om den inte anges, genereras filen i standardkatalogen TestResults .

  • --diagnostic-output-fileprefix

Prefixet för loggfilens namn. Standardvärdet är "log_".

  • --diagnostic-verbosity

Definierar verbositetsnivån när växeln --diagnostic används. De tillgängliga värdena är Trace, Debug, Information, Warning, Erroreller Critical.

  • --help

Skriver ut en beskrivning av hur du använder kommandot.

  • -ignore-exit-code

Tillåter att vissa avslutskoder som inte är noll ignoreras och i stället returneras som 0. Mer information finns i Ignorera specifika slutkoder.

  • --info

Visar avancerad information om .NET-testprogrammet, till exempel:

  • Plattformen.
  • Miljön.
  • Varje registrerad kommandoradsprovider, till exempel dess, name, versionoch descriptionoptions.
  • Varje registrerat verktyg, till exempel dess, command, name, version, descriptionoch alla kommandoradsprovidrar.

Den här funktionen används för att förstå tillägg som skulle registrera samma kommandoradsalternativ eller ändringar i tillgängliga alternativ mellan flera versioner av ett tillägg (eller plattformen).

  • --list-tests

Lista tillgängliga tester. Tester kommer inte att köras.

  • --minimum-expected-tests

Anger det minsta antalet tester som förväntas köras. Som standard förväntas minst ett test köras.

  • --results-directory

Katalogen där testresultaten ska placeras. Om den angivna katalogen inte finns skapas den. Standardvärdet finns TestResults i katalogen som innehåller testprogrammet.

Se även