Microsoft.Testing.Platform funkce (MTP)

MTP se dodává s integrovanými funkcemi a dá se rozšířit prostřednictvím balíčků NuGet.

Pokud používáte Microsoft.Testing.Platform.MSBuild (zahrnutý tranzitivně pomocí MSTest, NUnit a xUnit runnerů), stačí nainstalovat rozšiřující balíček NuGet — rozšíření se automaticky detekují a zaregistrují a vstupní bod se vygeneruje za vás.

Pokud se odhlásíte z automaticky generovaného vstupního bodu nastavením <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>, musíte rozšíření ručně zaregistrovat ve své Main metodě. Každá stránka rozšíření dokumentuje volání ruční registrace.

Rozšíření, která vyžadují balíček NuGet, jsou dodávána s vlastním licenčním modelem (některé méně povolující), nezapomeňte se seznámit s licencí spojenou s rozšířeními, která chcete použít.

Některá rozšíření jsou experimentální: jejich rozhraní API jsou opatřena poznámkami diagnostiky TPEXP a můžou se v budoucí verzi změnit, takže musíte potvrdit diagnostiku, aby je bylo možné použít. Experimentální rozšíření jsou v následujících seznamech označená (experimentální ).

Začněte tady

Na základě vašeho cíle použijte následující cestu:

Zvolit podle scénáře

  • Potřeba přizpůsobit výstup terminálu: Výstup terminálu (integrovaný)
  • Potřebujte sestavy TRX nebo Azure DevOps: Sestavy testů (rozšíření)
  • Potřebujete nativní výstup pro GitHub Actions (skupiny logů, anotace a souhrn jobu): GitHub Actions report (rozšíření)
  • Je potřeba data pokrytí: Pokrytí kódu (rozšíření)
  • Potřebujete diagnostiku havárie nebo zablokování? Výpisy havárií a zablokování (rozšíření)
  • Potřeba zaznamenat obrazovku během spuštění: Diagnostika (rozšíření, experimentální)
  • Je potřeba nasadit a spustit balíčkovaného testovacího hostitele s plnou důvěrou, UWP nebo AppContainer: Nasazení testovacího hostitele (rozšíření; experimentální rozhraní API spouštěče)
  • Je třeba znovu použít Microsoft.Extensions.Configuration, Microsoft.Extensions.Hostingnebo Microsoft.Extensions.Logging: Microsoft. Integrace rozšíření (rozšíření, experimentální)
  • Potřebujete sestavit editor nebo integraci integrovaného vývojového prostředí: Režim serveru (integrovaný)
  • Je potřeba načíst rozšíření, která nejsou referencemi při kompilaci: Dynamické načítání rozšíření (integrované, volitelné)
  • Potřebujete opakovat neúspěšné testy: Opakování (rozšíření)
  • Potřebujete podporu hot reload: Opětovné načítání za provozu (rozšíření)
  • Potřebuji podporu Microsoft Fakes: Microsoft Fakes (rozšíření)
  • Potřebujete trasování a metriky OpenTelemetry: OpenTelemetry (rozšíření)
  • Potřeba poskytnout klientům chatu AI testovací rozhraní nebo rozšíření: Integrace AI (rozšíření, experimentální)
  • Shromažďování a odhlášení telemetrických dat: Telemetrie (rozšíření)

Integrované funkce

Tyto funkce jsou součástí základní platformy a nevyžadují další balíčky NuGet.

Výstup terminálu

Hlášení stavu a průběhu do terminálu: režimy výstupu, podpora ANSI a indikátory průběhu.

Režim serveru

Řiďte zjišťování a spouštění testů z editoru, IDE nebo jiného nástroje prostřednictvím JSON-RPC.

Dynamické načítání rozšíření

Načítat explicitně deklarovaná sestavení rozšíření z manifestů JSON, pokud je běh výslovně povolen.

Funkce rozšíření

Tyto funkce vyžadují instalaci balíčků NuGet.

Testovací zprávy

Generovat soubory sestav testů (TRX, HTML, JUnit, CTRF, Azure DevOps, GitHub Actions).

Pokrytí kódu

Během provádění testu shromažďujte data o pokrytí kódu.

Chybové ukončení a zablokování výpisů paměti

Shromážděte soubory výpisu procesu, když testovací hostitel selže nebo zablokuje.

OpenTelemetry

Vysílat trasování a metriky prostřednictvím OpenTelemetry během testovacích cyklů

Integrace AI (experimentální)

Poskytovat chatovací klienty AI nezávislé na poskytovateli pro testovací frameworky a rozšíření, a to i prostřednictvím služby Azure AI Foundry.

Opakovat

Zkuste neúspěšné testy s konfigurovatelnými zásadami.

Opětovné načítání za provozu

Spouštění testů s podporou dynamického načítání pro rychlou iteraci.

Microsoft Fakes

Spusťte testy, které používají Microsoft Fakes pro zástupce a shimy.

Telemetrie

Shromažďování telemetrie. Zjistěte, jak se odhlásit a jaká data se shromažďují.

Diagnostika (experimentální, zavedená v MTP 2.3.0)

Zaznamenejte podklady k diagnostice průběhu, například pořízením záznamu obrazovky pomocí nástroje pro záznam videa.

Testovací nasazení hostitele (zavedeno v MTP 2.3.0; stabilní rozhraní API balíčků počínaje MTP 2.4.0; experimentální launcher API; Podpora UPW a AppContainer zavedená v MTP 2.5)

Určete, jak a kde se hostitel testů nasadí a spustí, včetně hostitelů testů v balíčku s plnou důvěrou, UWP a AppContainer.

Integrace Microsoft.Extensions (experimentální; protokolování zavedeno v MTP 2.3.0; konfigurace a hosting zavedeny v MTP 2.5 Preview)

Propojte MTP s knihovnami Microsoft.Extensions.*, které vaše aplikace už používá, včetně snímků konfigurace, hostitelů spravovaných aplikací a přeposílání diagnostických záznamů.