Testing
80 installs
XUnit Best Practices
by github/awesome-copilot
Get best practices for XUnit unit testing, including data-driven tests
Skill content
Comprehensive XUnit testing guide covering standard facts, data-driven theories, and best practices. - Covers test structure using Arrange-Act-Assert pattern, naming conventions, and fixture-based setup/teardown with IClassFixture<T> and ICollectionFixture<T> - Explains data-driven testing with [Theory] combined with [InlineData], [MemberData], and [ClassData] attributes, plus custom data attribute creation - Details assertion methods for equality, collections, regex patterns, and exception handling, with optional fluent assertions library integration - Includes mocking strategies using Moq or NSubstitute, test organization with traits and collections, and diagnostic output via ITestOutputHelper XUnit Best Practices Your goal is to help me write effective unit tests with XUnit, covering both standard and data-driven testing approaches. Project Setup - Use a separate test project with naming convention [ProjectName].Tests - Reference Microsoft.NET.Test.Sdk, xunit, and xunit.runner.visualstudio packages - Create test classes that match the classes being tested (e.g., CalculatorTests for Calculator) - Use .NET SDK test commands: dotnet test for running tests Test Structure