xUnit.NETでユニットテストをしてみよう【前編】 (1) xUnit.NETの入手と環境設定

ニュース
トップ

【ハウツー】

xUnit.NETでユニットテストをしてみよう【前編】

1 xUnit.NETの入手と環境設定

青木淳夫  [2010/07/14]
  • <<
  • <

1/3

xUnit.NETは.NET 2.0以上で動作するテストツールで、MicrosoftのBrad Wilson氏とJames Newkirk氏が中心となって開発を進めています。xUnit.NETは拡張性の向上、カスタム属性の減少、メソッドごとのインスタンス生成を特徴としており、Moq、Ninject、Oxite、KiGGなどのOSSにも採用されています。以下、xUnit.NETの導入方法、テストコードを紹介します。

xUnit.NET の入手と環境設定

xUnit.NET はCodePlexから入手できます。執筆時点での最新バージョンは1.6です。「xunit-1.6.zip」をダウンロードして適当なフォルダ(本稿ではC:\Sample\xunit)に展開します。これには以下のようなファイルが含まれています。

xUnit.NETのWebサイト

インストールウィンドウ(xunit.installer.exe)

  • テストフレームワーク(xunit.dll、xunit.extensions.dll)
  • テストランナー(xunit.console.exe、xunit.gui.exe)
  • インストーラー(xunit.installer.exe)
  • 外部連携用アセンブリ(xunit.runner.msbuild.dll、xunit.runner.tdNET .dll)
  • 整形用スタイルシート(HTML.xslt、NUnitXml.xslt)

必須ではありませんが、インストーラーを起動して初期設定をしておくとよいでしょう。このインストーラーではTestDriven.NETとの連携、ASP.NET MVCのテンプレート追加、GUIテストランナーと拡張子(*.xunit)の関連付けを行うことができます。なお、ReSharperとの連携はxUnit.NET Contribプロジェクトをご覧ください。

テストの準備

それでは、テストプロジェクトを作成しましょう。本稿では、Visual Studio 2010と.NET 4.0を使用します。まず、以下の2つのプロジェクトを内包するソリューションを作成します。

  • 実装プロジェクト(SampleLib.dll)
  • テストプロジェクト(SampleLibTest.dll)

プロジェクトの構成と設定

出力の種類は共に「クラスライブラリ」です。テストプロジェクトでは「xUnit.dll」「xUnit.extension.dll」「SampleLib.dll」に参照設定をします。テストプロジェクトをスタートアッププロジェクトに設定します。

次に、プロジェクトのプロパティでデバッグ実行時にテストランナーが起動するように設定します。バージョン1.6の場合、次の4種類が用意されていますので、テストプロジェクトに応じたテストランナーを選択します。

  • xunit.gui.exe(.NET 3.5以前で64ビット)
  • xunit.gui.x86.exe(.NET 3.5以前で32ビット)
  • xunit.gui.clr4.exe(.NET 4.0で64ビット)
  • xunit.gui.clr4.x86.exe(.NET 4.0で32ビット)

開始オプションのコマンドライン引数にはアセンブリ(*.dll)を設定します。

テストプロジェクト(*.xunit)の作成

現在の設定ではテストランナーを終了する度に確認ダイアログが表示されます。そのため、xUnit.NET のプロジェクトファイル(*.xunit)を作成し、そのパスをコマンドライン引数に設定することも可能です。プロジェクトファイルはテストランナーのProjectメニューから作成できます。

プロジェクトのプロパティ設定(xUnitプロジェクトを呼び出す場合)

インストーラーで関連付けを行っていれば、プロジェクトファイル(*.xunit)をダブルクリックしてテストランナーを起動できます。この場合、テストランナーを起動したままコードの編集を行えます。テスト対象のアセンブリを更新した場合も自動的にリロードされます(バーの色が変わります)。Visual Studioでデバッグはできませんが、状況に応じて使いわけるとよいでしょう。

  • <<
  • <

1/3

インデックス

目次
(1) xUnit.NETの入手と環境設定
(2) テストコードの記述
(3) Fact属性とTrait属性の設定


ITセミナー

新着記事

転職ノウハウ

あなたの仕事適性診断
あなたの仕事適性診断

4つの診断で、自分の適性を見つめなおそう!

Heroes File ~挑戦者たち~
Heroes File ~挑戦者たち~

働くこと・挑戦し続けることへの思いを綴ったインタビュー

はじめての転職診断
はじめての転職診断

あなたにピッタリのアドバイスを読むことができます。

転職Q&A
転職Q&A

転職に必要な情報が収集できます

ドS美人面接官 vs モテたいエンジニア
ドS美人面接官 vs モテたいエンジニア

入室しようとしたら、マサカリ投げられちゃいました!?

特別企画

一覧

    人気記事

    一覧

    イチオシ記事

    新着記事

    内田フル出場のシャルケ連勝ならず…ディ・マッテオ就任後初の黒星
    [03:24 10/26] ライフ
    レアルが逆転勝ちで“クラシコ”制す…バルサは今季初黒星
    [02:44 10/26] ライフ
    細貝が追加点を演出…ヘルタ・ベルリンがハンブルガーに3点完勝
    [00:46 10/26] ライフ
    ハノーファー清武がFK決勝弾…香川途中出場もドルトは6戦勝利なし
    [00:25 10/26] ライフ
    日本人対決は酒井高に軍配…合計9発の打ち合いに長谷部、乾敗れる
    [00:24 10/26] ライフ

    特別企画

    一覧

      求人情報