「NUnit」の版間の差分

imported>Administrator
imported>Administrator
 
(同じ利用者による、間の6版が非表示)
1行目: 1行目:
'''NUnit'''とは、単体テスト(ユニットテスト)を行うためフレームワーク、および自動実行を支援するためのツールである。
'''NUnit'''とは、[[単体テスト]]([[ユニットテスト]])を行う[[プログラム]]を作るための[[フレームワーク]]、およびそれらの単体テストプログラムの自動実行を支援するためのツールである。


拡張機能(アドオン)が使えない Visual Studio Express でも使えるのが最大の利点。
== 概要 ==
[[Visual Studio]]では、[[マイクロソフト]]製の単体テストフレームワーク([[MSTest]])は上位エディションにしか含まれない。また、[[MSTest]]は[[Visual Studio 2008]]に含まれるかたちで2008年2月1日(金)に最初の正式リリースとなっており比較的新しい部類に入る。


== MonoDevelop ==
このため多くの[[プログラマー]]はNUnitや[[MbUint]]、[[XUnit]]などの[[サードパーティ]]製の[[テストフレームワーク]]に既に慣れてしまっていた。さらにRhino モック、Type モック、NMock などのサードパーティ製の[[モックフレームワーク]]を併用していることが多く、それらのテストとモックの親和性も問題となった。
[[MonoDevelop]]ではNUnitが統合されている。
{{stub}}


== Visual Studio 2010 ==
加えて、[[Visual Studio Express Edition]]では拡張機能(アドオン)が使えないという制約があり、[[IDE]]と統合された現実的な方法でテストを行うことが不可能に近い状況であった。
Visual Studio 2010でNUnitを使うためにはNUnit付属のGUIツールを用いる。


=== Visual Studioと連携させる ===
NUnitは、それらをすべて解決すべく実装されており、また[[Visual Studio Express Edition]]であっても外部のGUIツールによりプロジェクトディレクトリの更新を自動検出(監視)することで、[[Visual Studio]]とは統合されていないのに連動して動作することができるようになっている。
 
なお、[[MonoDevelop]]にはNUnitが統合されており、上記のように難しいことを考える必要が一切ない。環境構築などという無駄な作業など考えず、[[MonoDevelop]]を[[インストール]]し、[[プログラム]]を作り、[[テストプログラム]]を書けばよい。[[MonoDevelop]]の発展のためにも[[MonoDevelop]]を積極的に使おう。
 
== インストール ==
インストーラの指示に従え。
あやぶむなかれ。
 
== テストの作り方 ==
# クラスライブラリなプロジェクトを作る(ソリューションに追加する)。
# 参照の追加で「NUnit.Framework」を追加する。
# テストクラスを書く
# 以上
 
== Visual Studioと連携させる ==
NUnitのGUIツールを起動し設定(Tool→Settings)を開き、下記の設定を有効にする。この設定をすることによりVisual Studioのソリューションファイルを開けるようになる(File→Open Project)。
NUnitのGUIツールを起動し設定(Tool→Settings)を開き、下記の設定を有効にする。この設定をすることによりVisual Studioのソリューションファイルを開けるようになる(File→Open Project)。
  IDE Support → Visual Studio → Enable Visual Studio Support (チェックを入れる)
  IDE Support → Visual Studio → Enable Visual Studio Support (チェックを入れる)
19行目: 31行目:
※NUnit 2.6.0.12051
※NUnit 2.6.0.12051


=== アプリケーション構成ファイル(app.config)を使う ===
== アプリケーション構成ファイル(app.config)を使う ==
# NUnitのGUIツールを起動し設定(Tool→Settings)より、下記のラジオボタンにチェックを入れる。
# NUnitのGUIツールを起動し設定(Tool→Settings)より、下記のラジオボタンにチェックを入れる。
#; Test Loader → Assembly Isolation → Default Domain Usage → Use a separate AppDomain per Assembly
#; Test Loader → Assembly Isolation → Default Domain Usage → Use a separate AppDomain per Assembly
28行目: 40行目:
※NUnit 2.6.0.12051
※NUnit 2.6.0.12051


=== デバッガを使う ===
== デバッガを使う ==
NUnitでのテスト実行に対しVisual Studio 2010でステップ実行などのデバッグを行うには下記の手順を用いる。
NUnitでのテスト実行に対しVisual Studio 2010でステップ実行などのデバッグを行うには下記の手順を用いる。
# Visual Studio 2010のメインメニューから「デバッグ→プロセスにアタッチ」を選ぶ。
# Visual Studio 2010のメインメニューから「デバッグ→プロセスにアタッチ」を選ぶ。
36行目: 48行目:
※NUnit 2.6.0.12051
※NUnit 2.6.0.12051


=== F5で自動起動&実行する ===
== F5で自動起動&実行する ==


Visual Studio Express 以外の場合は、[[TestDriven.Net]](http://www.testdriven.net/)をインストールするのが手っ取り早い。
Visual Studio Express 以外の場合は、[[TestDriven.Net]][http://www.testdriven.net/]をインストールするのが手っ取り早い。


Visual Studio Expressの場合は、下記の手順。
Visual Studio Expressの場合は、下記の手順。
67行目: 79行目:
以上で完了。
以上で完了。
Visual Studioでプロジェクトファイルを開けば動くようになっているはず。
Visual Studioでプロジェクトファイルを開けば動くようになっているはず。
Hage.Test.csprojに直接書き込んでも問題ないが、ファイルが若干大き目なので探すのが大変かもしれないのでHage.Test.csproj.userを使った方が良いと思う。
 
なお、上記の内容はHage.Test.csprojに直接書き込んでも問題ないが、ファイルが若干大き目なので探すのが大変かもしれないので、Hage.Test.csproj.userを使った方が良いと思う。
 
また、この方法ではデバッグが有効にならないので注意。


== 関連項目 ==
== 関連項目 ==