Skip to main content

NUnit is a unit-testing framework for all .NET languages. It can run on macOS, Linux and Windows operating systems. NUnit can be used for a wide range of testing, from unit testing with TDD to full-fledged system and integration testing. It is a non-opinionated, broad and deep framework with multiple different ways to assert that your code behaves as expected. Many aspects of NUnit can be extended to suit your specific purposes. The latest version, version 5, is an upgrade from the groundbreaking NUnit 3 framework and its major update version 4. It is a modernized version, aimed at taking advantage of the latest .NET features and C# language constructs. If you are upgrading from NUnit 3, be aware of the breaking changes (https://docs.nunit.org/articles/nunit/release-notes/breaking-changes.html#nunit-40). Please see the NUnit 4 Migration Guide (https://docs.nunit.org/articles/nunit/release-notes/Nunit4.0-MigrationGuide.html) and take care to prepare your NUnit 3 code before you do the upgrade. If you're upgrading from NUnit 4, please check the release notes for version 5 (https://docs.nunit.org/articles/nunit/release-notes/framework.html). Supported platforms: - .NET Framework 4.6.2+ - .NET 8.0+ - .NET 10.0+

Total Downloads
666.3M
666,310,874
Published
Jul 4, 2026
Latest stable version

Install

.NET CLI
dotnet add package nunit --version 5.0.0-beta.1
Package Manager Console
Install-Package nunit -Version 5.0.0-beta.1
PackageReference
<PackageReference Include="nunit" Version="5.0.0-beta.1" />

Frameworks

.NETFramework4.6.2 net8.0 net10.0

Dependencies

[4.6.3, )
System.ValueTuple
.NETFramework4.6.2
[4.6.2, )

Adoption guide

Teams that value its attribute model, parameterized tests and established NUnit conventions.

Unit Testing guide
Why it appears in the guide: A mature test framework with expressive attributes, constraints and broad platform support. Trade-off: A major-version upgrade can involve source and assertion changes; read its migration guidance first.

This version is marked prerelease. Validate its API and upgrade path before production use.

Compatibility metadata lists 3 target frameworks; confirm the exact target used by your application.

How to read this guidance

Sources: published NuGet v3 registry metadata and explicit NuBrowse editorial guides. Refresh: package metadata is refreshed from NuGet when the page loads. Limit: this is not a security, legal or compatibility guarantee; validate the selected version in your project.

Useful next steps

Move from package metadata to a concrete selection or review workflow.