GUIのユニットテスト③ .NET

前回の続きです。
作成したユニットテストをHudsonで実行してみます。


Hudsonをサービスで実行している場合、GUIユニットテストをHudson上で実行する事ができません。
サービスのプロパティから「デスクトップとの対話をサービスに許可」をONにしておきます。



以前に作ったdefault.buildに合わせて、
プロジェクトのディレクトリ構成はこんな感じになっています。

GUI+NDbUnitSample ← ソリューション
├─NUnitFormsSample ← テスト対象のプロジェクト
│ ├─App.config
│ ├─Program.cs
│  └─SampleForm.cs
└─NUnitFormsSampleTest ← テストプロジェクト
  ├─App.config
  ├─NUnitFormsSampleTest.cs
   ├─NDbUnitLib
  │ ├─MySql.Data.dll
  │ ├─NDbUnit.Core.dll
  │ ├─NDbUnit.MySql.dll
  │ ├─NDbUnit.OleDb.dll
  │ ├─NDbUnit.OracleClient.dll
  │ ├─NDbUnit.SqlClient.dll
  │ ├─NDbUnit.SqlLite.dll
  │ ├─NDbUnit.SqlServerCe.dll
   │ └─System.Data.SQLite.DLL
   └─testdata
    └─NUnitFormsSampleTest
      ├─userInfo.xsd
      ├─init.xml
      └─selectAll.xml

新規ジョブを作成

Javaプロジェクトと同じで、以前に作ったジョブをコピーして作ります。



ジョブの設定を変更

基本的にコピーした設定をそのまま使います。
但し、SVNレポジトリURLやプロジェクトのルートフォルダ名は変更する必要があります。



default.buildなどを置く

以前に作ったdefault.build等をソリューション直下に置きます。


 default.build
 codeAnalysis.build
 coverage.build


default.build等は特に変更しなくてもイケルはずですが、
テスト/カバレッジ測定の除外クラスを変更したい場合は、
coverage.buildの定義を変更します。



Hudsonから実行してみる

実行方法は今までどおりです。





カバレッジも出力されています。
VisualStudioの自動生成コードがあるから100%は難しいかも(;´Д`)