NUnitは.NET用のテストツールであり、C#やVisualBasicなどで利用できます。

テスト対象のプロジェクト (基幹プロジェクト) に対して、テスト用のプロジェクトを作成します。

C++/CLI では、CLRサポートが/clr:pureでなければなりません。これはプロジェクトのプロパティから、[共通言語ランタイムサポート]の項目で設定できます。

テストを実行するには、テスト プロジェクトからテスト対象のプロジェクトとNUnitのライブラリ (nunit.framework.dll) が参照されている必要があります。これはプロジェクトのプロパティから、参照設定の[新しい参照の追加]で行います。
たとえばTestDriven.NETによりインストールを行ったならば、nunit.framework.dllは既定では%ProgramFiles%/TestDriven.NET 2.0/NUnit/2.4にあります。

| クラス | メソッド | |
|---|---|---|
| テスト宣言 | TestFixture | Test |
| 初期化処理 | TestFixtureSetUp | SetUp |
| 終了処理 | TestFixtureTearDown | TearDown |
| 例外の発生 | - | ExpectedException( type ) |
| 無効 | Ignore( "理由" ) | |
メソッドにはConstraint-Based ModelとClassic Modelの2種類がありますが、ここではClassic Modelについて解説します。
| 概要 | メソッド | テストが成功する条件 |
|---|---|---|
| 条件の成立 | IsTrue | 条件が成立する |
| IsFalse | 条件が成立しない | |
| オブジェクトの存在 | IsNull | オブジェクトがNull |
| IsNotNull | オブジェクトがNullではない | |
| 型の確認 | IsInstanceOfType | |
| 代入の確認 | IsAssignableFrom | |
| 文字列の存在 | IsEmpty | 空の文字列 |
| 配列の要素の存在 | 空の配列 | |
| 配列内のオブジェクトの確認 | Contains | 配列内にオブジェクトが含まれる |
| オブジェクトの比較 | AreSame | オブジェクトが同一のインスタンス |
| 値の比較 | AreEqual | 予測値と実測値が同一 |
| 予測値が実測値の想定範囲内 | ||
| Fail | 実行されない |
| 概要 | メソッド |
|---|---|
| 指定の文字列が含まれているか | Contains |
| 指定の文字列から始まっているか | StartsWith |
| 指定の文字列で終わっているか | EndsWith |
| 大文字/小文字を問わずに同一か | AreEqualIgnoringCase |
| 正規表現と一致 | IsMatch |