はじめに

Moqは、.NETで注目を集めているモックライブラリです。MoqはシンプルなAPIを持ち、Visual Studioのインテリセンス機能を活用できるため、初心者でも簡単にモックを使い始めることができます。

モックとは

モックを使うと、未実装のクラスやインタフェースを、あたかも実装済みのように振る舞わせることができます。また、本番環境とテスト環境で振る舞いを変えたい場合にも使用できます。例えば、外部リソース(サーバやWebサービス)と連携する場合や、環境によって異なる要素(現在時刻等)のテストに役立ちます。

Moqとは

Moqはオープンソースのモックライブラリで、モッキュ(Mock-You)と発音します。.NET環境においてはNMock、TypeMock.NET、EasyMock.NET、RhinoMockなど多くのモックライブラリが存在しますが、Moqは初心者でも覚えやすい簡単なモックとして人気を集めています。

Moqの特徴は強い型付けが利用できることです。そのため、従来のモックのように文字列でメソッド名を指定したり、キャストしたりする必要がありません。Visual Studioのインテリセンス機能をフル活用できるため、リファクタリングも容易にできます。

インテリセンスを利用したモックプログラミング

Moqの入手方法

MoqはGoogle codeにて公開されています。

MoqのWebサイト

本稿では、DLLとAPIドキュメントが含まれている「Moq.3.1.416.3-bin.zip」をダウンロードします。このWebサイトには、ソースコード(サンプル含む)やSilverlight版バイナリも公開されています。