What problem does it solve?
It solves the friction and CI failures caused by migrating .NET tests that currently run under VSTest so they instead run correctly under Microsoft.Testing.Platform (MTP), including handling behavioral differences like exit code 8 when zero tests are discovered.
Core Features & Use Cases
- MTP runner enablement by framework: Guides enabling the correct MTP runner settings for MSTest, NUnit, xUnit.net v2 (via YTest.MTP.XUnit2), and xUnit.net v3 (native MTP).
- Centralized configuration via Directory.Build.props: Provides safe patterns for configuring OutputType and runner opt-ins consistently at solution/repo scope.
- CLI argument and filter migration: Translates common VSTest options to MTP equivalents, including special handling for xUnit.net v3 filter translation.
- CI/CD pipeline updates: Replaces VSTest task usage with dotnet test execution and updates arguments accordingly, including required separators for .NET 9 and earlier.
- Behavioral difference guardrails: Shows how to handle MTP-specific behavior such as zero-test exit code handling and avoids unsupported mixed-mode solutions.
Quick Start
Ask to migrate your test solution at the path you provide from VSTest to Microsoft.Testing.Platform, including translating any CI dotnet test arguments and filter syntax needed for your test frameworks.