NUnit 3.0 Framework
C# Other
Latest commit 48e14ca Jan 23, 2017 @cristobalito cristobalito committed with rprouse Suppress reason in xml if null or whitespace (#1955)
* Refactor ignore reason into a field

* Ensure new field conforms to naming conventions

* Test different permutations of IgnoreReason

* Fix tests for empty or whitespace ignore reasons

Expectation is that no reason element will be written to the xml in this
case, which is a change in behaviour from the current code.

* Refactor common code into a baseclass

* Rework test code - use an Action for validation

* Reinstate broken logic

* Extract constant to (common) base class

* Use constant instead of string literal

* Remove unnecessary abstract modifier on test class

* Rename test class to match filename (+ convention)

* Reinstate abstract modifier for class

Prevents NUnit from considering the class as a test fixture. Also mark
the constructor as protected.

* Fixture to take reason string and xml validation

* Extract tests with valid reason message to own class

* Share common reason node validation

* Move common node validation to base class

* Add a test for a null reason

* Extract common logic to base class

* Add string.Empty and whitespace test cases

* Add success test cases

* Implement the actual fix
Failed to load latest commit information.
nuget Update the copyright to 2017 Jan 10, 2017
packages Checkpointing, NuGet restore is now working properly from Cake Nov 7, 2016
src Suppress reason in xml if null or whitespace (#1955) Jan 23, 2017
tools Update build script and artifacts Oct 11, 2016
.editorconfig Added .NET Standard version of the framework Nov 4, 2016
.gitattributes Added portable to the Linux solution Sep 8, 2015
.gitignore Added .NET Standard version of the framework Nov 4, 2016
.travis.yml Revert to the original Travis configuration and don't build .NET Stan… Nov 7, 2016 Extended tests for TestExecutionContext and TestContext to cover more… Jan 10, 2017
CHANGES.txt Update release dates in changes.txt Jan 12, 2017 Update links in Jul 21, 2016
LICENSE.txt Update the copyright to 2017 Jan 10, 2017
NOTICES.txt Move common text files to root Sep 1, 2014
NUnit.sln.DotSettings NUnitProject should parse properly regardless whether Xml Declaration… Dec 8, 2015
NuGet.config Remove clear from NuGet.config Jun 20, 2016 Changes based on code review Dec 13, 2016
Rebracer.xml Initisal preparation for the 3.5 release Oct 3, 2016
appveyor.yml Drop installation of CF from AppVeyor build Nov 4, 2016
build Update top-level script commands and remove old ones Dec 25, 2015
build.cake Update to 3.7 for the next release Jan 10, 2017
build.cmd Update top-level script commands and remove old ones Dec 25, 2015
build.ps1 Update build script and artifacts Oct 11, 2016 Merge changes from Travis build Dec 12, 2015
global.json Switch the bin directory to netstandard16 so we can have more version… Nov 16, 2016
nunit.linux.sln remove migrated console/engine projects from nunit.linux.sln Sep 20, 2016
nunit.sln Added the NUnitLite.Runner and NUnitLite.Tests .NET Standard projects Nov 4, 2016

NUnit 3 Framework

AppVeyor Build status Travis Build Status NuGet Version and Downloads count

Follow NUnit Gitter nunit-discuss Google Groups

NUnit is a unit-testing framework for all .NET languages. Initially ported from JUnit, the current production release, version 3, has been completely rewritten with many new features and support for a wide range of .NET platforms.

Table of Contents


The latest release of the NUnit Framework is available on NuGet or can be downloaded from GitHub.


Documentation for all NUnit projects are hosted on GitHub at


For more information on contributing to the NUnit project, please see and the Developer Docs.

NUnit 3.0 was created by Charlie Poole, Rob Prouse, Simone Busoli, Neil Colvin and numerous community contributors. A complete list of contributors since NUnit migrated to GitHub can be found on GitHub.

Earlier versions of NUnit were developed by Charlie Poole, James W. Newkirk, Alexei A. Vorontsov, Michael C. Two and Philip A. Craig.


NUnit is Open Source software and NUnit 3 is released under the MIT license. Earlier releases used the NUnit license. Both of these licenses allow the use of NUnit in free and commercial applications and libraries without restrictions.

NUnit Projects

NUnit is made up of several projects. When reporting issues, please try to report issues in the correct project.

Core Projects

  • NUnit Test Framework - The test framework used to write NUnit tests (this repository)
  • NUnit Console and Engine - Runs unit tests from the command line and provides the engine that is used by other test runners to run NUnit tests

Visual Studio Extensions

Other Projects

NUnit Engine Extensions