C# NUnit skill: NUnit unit testing practices for Claude Code
Makes your AI assistant follow NUnit best practices when it writes C# unit tests, including data-driven tests.
- Installs
- 9K
- on skills.sh
- Stars
- 40.7K
- on GitHub
- Updated
- Oct 2026
- last repo commit
csharp-nunit is a checklist of NUnit rules your assistant follows when it writes or reviews C# unit tests. It covers project setup, test structure, data-driven tests, assertions, mocking and test organization. The rules assume a separate [ProjectName].Tests project with the Microsoft.NET.Test.Sdk, NUnit and NUnit3TestAdapter packages, run with dotnet test. The folder holds only SKILL.md and bundles no scripts.
Good for
- .NET developers who use NUnit and want consistent tests from their assistant
- Teams that want one set of naming, structure and assertion rules
- Developers moving to data-driven tests with TestCase and TestCaseSource
Install csharp-nunit
Claude Code
- 1
Download the skill folder from https://github.com/github/awesome-copilot/tree/HEAD/skills/csharp-nunit.
- 2
Put it at ~/.claude/skills/csharp-nunit/ so that SKILL.md sits directly inside.
- 3
Start a new session; the skill loads when its description matches the task.
Built from the package data we hold. Not yet tested by us.
What's in the skill
When it loads
Get best practices for NUnit unit testing, including data-driven tests
Sections in SKILL.md
- Project Setup
- Test Structure
- Standard Tests
- Data-Driven Tests
- Assertions
- Mocking and Isolation
- Test Organization
Key facts
- License
- MIT
- Installs on skills.sh
- 8,968 as of 2026-11-02
- Last repo commit
- 2026-10-30
- What is inside
- 1 file, SKILL.md; it bundles no scripts
What it includes
Separate [ProjectName].Tests project, three packages, dotnet test
Names the test project, lists the packages to reference and says to run tests with the .NET SDK command dotnet test.
Runs code ·
Project SetupTestFixture, Test, Arrange-Act-Assert, MethodName_Scenario_ExpectedBehavior
Covers the fixture and test attributes, setup and teardown attributes at test, class and assembly level, and the test naming pattern.
Try: “Write NUnit tests for the Calculator class using the csharp-nunit rules.”
Write ·
Test StructureOne behaviour per test, independent and idempotent
Keeps tests focused and free of dependencies on each other.
Write ·
Standard TestsTestCase, TestCaseSource, Values, ValueSource, Random, Range, Combinatorial, Pairwise
Lists the attributes to use for inline data, generated data and parameter combinations.
Write ·
Data-Driven TestsAssert.That with constraints first, plus classic helpers
Prefers the constraint model and also names Assert.AreEqual, CollectionAssert, StringAssert and Assert.Throws.
Write ·
AssertionsMoq or NSubstitute, interfaces, a DI container
Suggests mocking dependencies through interfaces to isolate the unit under test.
Write ·
Mocking and IsolationCategory, Order, Author, Description, Explicit, Ignore
Groups tests by feature and names the attributes for categories, order, ownership, descriptions and skipping.
Write ·
Test Organization
From the official docs
Permissions
Low risk
The skill makes your assistant write test code in your project and run dotnet test. The Copilot CLI plugin route adds an agent with edit and command tools.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It edits your test project and runs tests
The rules include creating a [ProjectName].Tests project and running dotnet test. Commit first so you can review the changes. github.com
The plugin route adds an agent
The csharp-dotnet-development plugin lists the expert-dotnet-software-engineer agent, whose tools include edit/editFiles, runCommands and runTests. Use the skills CLI tab to install only this skill. github.com
Technical details
| Turning on read-only | No read-only mode. The skill is built to write tests. |
|---|---|
| Scopes |
|
Questions
What does csharp-nunit do?
It gives your assistant NUnit rules for C# unit tests: how to set up the test project, structure and name tests, write data-driven tests, pick assertions, mock dependencies and organize tests.
How do I install it?
Use the install box at the top. In Claude Code, put the skill folder in ~/.claude/skills/ or .claude/skills/. In Claude on the web or desktop, zip the folder and upload it under Customize, then Skills.
Does it run my tests?
The skill bundles no scripts. It tells the assistant to use dotnet test to run tests, so any run happens through your assistant and your .NET SDK.
Does it work with xUnit or MSTest?
This skill is written for NUnit only. The csharp-dotnet-development plugin also lists csharp-mstest, csharp-tunit and csharp-xunit skills for other frameworks.
Does it need an API key?
The skill names no key and bundles no scripts.
Which plugins include it?
csharp-dotnet-development (9 skills, 1 agent) and testing-automation (5 skills, 4 agents), both in awesome-copilot. They install with Copilot CLI, and the install box uses the first.
Is it safe?
The skill is a rule list with no scripts, but it makes your assistant edit test code and may run dotnet test. The Copilot CLI plugin route adds an agent that lists edit and command tools, so use the skill-only install if you do not want it.
Information
updated Nov 2, 2026
- Repository
- github/awesome-copilot
- Folder
skills/csharp-nunit
Sources
Docs, issue trackers and discussions this page is built from.
Show all 5Hide
- csharp-nunit SKILL.md · github.com
- awesome-copilot README, Install a Plugin · github.com
- csharp-dotnet-development plugin.json · github.com
- testing-automation plugin.json · github.com
- expert-dotnet-software-engineer agent · github.com