Testing
44 installs
NUnit Best Practices
by github/awesome-copilot
Get best practices for NUnit unit testing, including data-driven tests
Skill content
NUnit best practices for standard and data-driven unit testing in .NET projects. - Organize tests with [TestFixture] classes matching production code, using [Test] methods named MethodName_Scenario_ExpectedBehavior and following Arrange-Act-Assert structure - Data-driven testing via [TestCase], [TestCaseSource], [Values], [Range], and [Combinatorial] attributes for inline, programmatic, and parameterized test generation - Use Assert.That with constraint model (Is.EqualTo, Contains.Item) and specialized assertions like CollectionAssert, StringAssert, and Assert.Throws<T> for exceptions - Manage test lifecycle with [SetUp], [TearDown], [OneTimeSetUp], and [OneTimeTearDown] for per-test and per-class initialization - Keep tests focused, independent, and idempotent; use [Category], [Order], and [Explicit] for organization and execution control NUnit Best Practices Your goal is to help me write effective unit tests with NUnit, 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, NUnit, and NUnit3TestAdapter 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