What problem does it solve? Writing consistent, maintainable unit tests in C# requires knowing xUnit conventions, data-driven testing patterns, and proper assertion usage, which developers often get wrong or apply inconsistently. ## Core Features & Use Cases - Test Structure Guidance: Enforces AAA pattern, naming conventions like MethodName_Scenario_ExpectedBehavior, and proper setup/teardown with constructors, IDisposable, and fixtures. - Data-Driven Testing: Covers [Theory] with [InlineData], [MemberData], [ClassData], and custom DataAttribute implementations for parameterized tests. - Assertions and Mocking: Recommends correct Assert methods, exception testing with Assert.ThrowsAsync, and isolation using Moq or NSubstitute. - Use Case: When refactoring a legacy Calculator class, use this Skill to generate a CalculatorTests project with [Fact] tests for simple cases and [Theory] tests covering edge-case inputs. ## Quick Start Write xUnit tests for my C# class using [Fact] and [Theory] with proper AAA structure and naming conventions.