What problem does it solve? Writing MSTest unit tests often leads to outdated patterns like [ExpectedException], generic Assert.IsTrue checks, swapped AreEqual arguments, and MSTESTxxxx analyzer warnings. This Skill guides you through writing, fixing, and modernizing MSTest 3.x/4.x tests with current APIs and best practices. ## Core Features & Use Cases - Modern assertion APIs: Replace Assert.IsTrue with specific assertions like IsEmpty, HasCount, Contains, IsInstanceOfType, and ThrowsExactly for clearer failure messages. - Data-driven and lifecycle patterns: Implement DataRow, DynamicData with ValueTuples, constructor-based initialization, TestContext injection, and cancellation token usage. - Analyzer fixes: Resolve MSTESTxxxx diagnostics with the idiomatic code fix for each rule. - Use Case: You inherit a test suite full of Assert.IsTrue(list.Count > 0) and [ExpectedException] attributes. Use this Skill to convert them to Assert.IsNotEmpty and Assert.ThrowsExactly, fix swapped AreEqual arguments, and clear all analyzer warnings. ## Quick Start Ask the AI to write MSTest unit tests for your C# class using modern MSTest 3.x assertions and data-driven patterns.