Menguji penyebaran host

Ekstensi ini mengontrol bagaimana dan di mana MTP menyebarkan dan memulai host pengujian. Mereka menggunakan titik ekstensi eksperimental ITestHostLauncher untuk mengontrol penyebaran dan startup host pengujian. Setiap ekstensi memerlukan paket NuGet lain, seperti yang dijelaskan di setiap bagian.

Tip

Saat Anda menggunakan Microsoft. Testing.Platform.MSBuild, instal paket NuGet ekstensi untuk mendaftarkan ekstensi secara otomatis. Pelari MSTest, NUnit, dan xUnit termasuk Microsoft.Testing.Platform.MSBuild secara transitif. Jika Anda menonaktifkan titik masuk yang dihasilkan, panggil AddSelfRegisteredExtensions untuk mendaftarkan paket yang dikontribusikan MSBuild.

Penerapan aplikasi yang dipaketkan

Ekstensi aplikasi paket mendaftarkan host pengujian Windows paket kepercayaan penuh dari tata letak build-output-nya dan mengaktifkannya dengan ID Model Pengguna Aplikasi (AUMID). Ini adalah konsumen acuan dari titik ekstensi eksperimental ITestHostLauncher untuk aplikasi Windows yang dikemas. Ekstensi ini memerlukan paket NuGet Microsoft.Testing.Extensions.PackagedApp.

Note

Paket ekstensi tersedia dimulai dengan MTP versi 2.3.0. Pendaftaran MSIX kepercayaan penuh dan aktivasi AUMID diterapkan di microsoft/testfx repositori tetapi tidak tersedia dalam paket NuGet publik per 6 Agustus 2026. Ekstensi ini bersifat eksperimental, dan opsi dan format outputnya mungkin berubah dalam versi mendatang.

Penuhi persyaratan ini sebelum Anda menggunakan ekstensi:

  • Targetkan versi platform Windows atau yang 10.0.19041.0 lebih baru.
  • Untuk mendaftarkan tata letak build-output yang tidak ditandatangani, aktifkan Mode Pengembang atau konfigurasikan sideloading.
  • Gunakan host desktop kemasan kepercayaan penuh. Ekstensi ini tidak mendukung UWP klasik, .NET UWP modern dengan UseUwp, atau host AppContainer lainnya.

Untuk konfigurasi WinUI lengkap yang dihost sendiri, lihat Menguji aplikasi WinUI 3 dengan MSTest dan MTP.

Pendaftaran manual

var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddPackagedAppDeployment();

Jangan panggil AddPackagedAppDeployment jika aplikasi yang dihost sendiri sudah memanggil AddSelfRegisteredExtensions dan mereferensikan paket. Eksekusi MTP hanya dapat mendaftarkan satu peluncur host pengujian.