.NETのテストツール NUnitの使用方法

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

導入

ダウンロード

開発手順

テスト プロジェクトの作成

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

C++/CLIでの利用

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

参照設定

テストを実行するには、テスト プロジェクトからテスト対象のプロジェクトとNUnitのライブラリ (nunit.framework.dll) が参照されている必要があります。これはプロジェクトのプロパティから、参照設定の[新しい参照の追加]で行います。

たとえばTestDriven.NETによりインストールを行ったならば、nunit.framework.dllは既定では%ProgramFiles%/TestDriven.NET 2.0/NUnit/2.4にあります。

NUnit リファレンス

属性

テストの宣言を行う属性
  クラス メソッド
テスト宣言 TestFixture Test
初期化処理 TestFixtureSetUp SetUp
終了処理 TestFixtureTearDown TearDown
例外の発生 - ExpectedException( type )
無効 Ignore( "理由" )
Attributes - NUnit

メソッド

メソッドにはConstraint-Based ModelClassic Modelの2種類がありますが、ここではClassic Modelについて解説します。

Assertクラスのおもなメソッド
概要 メソッド テストが成功する条件
条件の成立 IsTrue 条件が成立する
IsFalse 条件が成立しない
オブジェクトの存在 IsNull オブジェクトがNull
IsNotNull オブジェクトがNullではない
型の確認 IsInstanceOfType  
代入の確認 IsAssignableFrom  
文字列の存在 IsEmpty 空の文字列
配列の要素の存在 空の配列
配列内のオブジェクトの確認 Contains 配列内にオブジェクトが含まれる
オブジェクトの比較 AreSame オブジェクトが同一のインスタンス
値の比較 AreEqual 予測値と実測値が同一
予測値が実測値の想定範囲内
  Fail 実行されない
Classic Assert Model - NUnit
StringAssertクラスのメソッド
概要 メソッド
指定の文字列が含まれているか Contains
指定の文字列から始まっているか StartsWith
指定の文字列で終わっているか EndsWith
大文字/小文字を問わずに同一か AreEqualIgnoringCase
正規表現と一致 IsMatch
StringAssert - NUnit
複数の技術系サイトから、まとめて検索