NUnit is a full-featured unit test framework built using TDD. The distribution includes unit tests covering all of NUnit's functionality. Aside from the core framework, NUnit also includes GUI and console test runners, code samples, extensions, and utilities.
NUnit relies on C# attributes to structure test code. In contrast to the conventional object-oriented definition of an attribute, a C# attribute is metadata attached to a code element such as a class or method. These attributes contain descriptive declarations that may be accessed at runtime. NUnit attributes such as Test and TestFixture allow the test framework to identify test methods and classes. This approach makes it possible to build unit tests with minimal knowledge of the underlying NUnit code structure.