自動テストツール NUnit/NUnitAspを使ってみる
テスト駆動開発とかアジャイルの言葉に挽かれてNUnit/NUnitAspに挑戦してみることにした。
NUnit-GuiからテストコードのDLLを読み込もうとすると、NUnit-GuiがBadImageFormatExceptionを吐いてイメージを読み込んでくれない。
調べてみると、NUnitAspの最新バージョン1.5.1にバンドルされているNUnitは2.2.0で、NUnitの最新バージョンは2.2.9が出てるらしい。さっそくNUnitを2.2.9にアップグレードしてみると、NUnit-Guiは例外を吐かなくなったものの、今度はNUnitASPが動かない。どうやらNUnitAsp1.5.1と一緒に使うNUnitは2.2.0じゃないとだめらしい・・・難しいなあ。
NUnitAspは日本語の情報もそんなにないし。海外のForumで.configを弄ってみると良いとか出ていて試してみたけどダメ。TestDriven.NET経由で動かすと動くという情報を知って試しにTestDriven.NET2.0経由で動かすと普通に動いた・・・(;´Д`)ナンデ?
あと注意ポイントがいくつか
- テストコードを記述するクラス自体をpublic宣言すること。コンストラクタもpublicで宣言する。
- NUnitAspの場合は[SetUp] [TearDown]属性は使わない。WebFormTestCaseを継承する場合void SetUp()とvoid TearDown()をオーバーライドする。
- TestDriven.NETはVisual C# Express Editionでは使えないらしい?
ためしにいくつかテストコードを書いてみたけど、なかなかよさそうな感じ。特にTestDriven.NETを使うとVSからシームレスにテストを実行できるのがマジ便利。これを使いこなせれば開発効率とコードの品質はかなり向上するんじゃなかろうか。
参考
- NUnit
- http://sourceforge.net/projects/nunit
- NUnitAsp公式(英語)
- http://nunitasp.sourceforge.net/]
- TestDriven.NET(英語)
- http://www.testdriven.net/
- NAgile開発 NUnitAspによるWebフォームのテスト
- http://www.nagile.com/nuke/Portals/0/NUnitAsp.pdf
- .NET開発のTipsなぐりがき! NAgile
- http://rararahp.blog69.fc2.com/blog-category-3.html
- NUnit Ver2.0ユーザーガイド
- http://www.objectclub.jp/community/XP-jp/xp_links/NUnitUsersGuidebookVer2.pdf
- Japan.internet.com デベロッパー - NUnitAsp の高度な使い方
- http://japan.internet.com/developer/20051005/26.html
- NUnitAsp1.4.1 導入ガイド
- http://www.itsol.co.jp/columns/TC-004/TC-004.html
- NAgiler 航海日誌
- NUnitAsp資料とサンプルコードの公開:http://www.takakuro.net/blogs/nagile/archive/2005/07/07/59.aspx