What problem does it solve? Writing MSTest unit tests often leads to outdated patterns like generic Assert.IsTrue checks, [ExpectedException] attributes, swapped AreEqual arguments, and legacy DynamicData formats, which produce poor failure messages and trigger MSTESTxxxx analyzer warnings. ## Core Features & Use Cases - Modern assertion guidance: Replace Assert.IsTrue with specific assertions like Assert.IsEmpty, HasCount, Contains, IsInstanceOfType, and ThrowsExactly for clearer failure messages. - Data-driven and lifecycle patterns: Implement DataRow, ValueTuple-based DynamicData, constructor injection of TestContext, and cooperative cancellation with TestContext.CancellationToken. - Analyzer diagnostics fixes: Map common MSTESTxxxx rules (e.g., MSTEST0006, MSTEST0017, MSTEST0037) to concrete code fixes. - Use Case: A developer inherits a test suite full of Assert.IsTrue(list.Count > 0) and [ExpectedException] attributes; this Skill rewrites them into Assert.IsNotEmpty and Assert.ThrowsExactly calls and resolves the resulting analyzer warnings. ## Quick Start Ask the AI to write MSTest unit tests for a given C# class or to modernize an existing MSTest test file using current assertion APIs.