What problem does it solve?
Migrating .NET test suites from xUnit to MSTest by hand is error-prone: assertion semantics invert between frameworks, fixture lifetimes differ, and parallelization defaults change. This Skill performs the conversion systematically while preserving the target framework, test platform (VSTest or MTP), and test result parity.
Core Features & Use Cases
- Mechanical conversion: Rewrites Fact/Theory/InlineData/MemberData to TestMethod/DataRow/DynamicData, maps traits and Owner, and swaps xUnit packages for the MSTest v4 metapackage or MSTest.Sdk.
- Semantic mapping: Handles high-risk constructs such as exact-vs-derived exception assertions, IClassFixture/ICollectionFixture lifetime, ITestOutputHelper to TestContext, cancellation tokens, and xUnit parallelization defaults.
- Parity verification: Builds, runs dotnet test, and compares discovered/passed/failed/skipped counts against the baseline, flagging constructs with no MSTest equivalent for manual follow-up.
- Use Case: A team standardizing on MSTest v4 points the agent at an xUnit v3 test project; the Skill converts packages, attributes, assertions, and fixtures, then proves identical test counts without changing the target framework.
Quick Start
Convert the xUnit test project in the current workspace to MSTest v4, keeping the existing test platform, then build and run the tests to verify parity.