Gallio Ambienceの設定

Nextをクリックすると、Gallio Ambienceの設定画面が表示されます。

Gallio Ambienceの設定画面

Gallio Ambienceとはテスト中に利用できるオブジェクトデータベースで、このサービスの起動モードを設定できます。後から変更できるので、設定はデフォルトのManualで問題ないでしょう。

Gallio Ambienceの紹介

Ambienceはユニークな機能ですので、少し紹介しておきましょう。Ambienceを利用すると、テスト中に永続化しておきたいオブジェクトを保存することができます。設定方法も簡単で、Gallio.Ambience.dllに参照設定(.NET Framework3.5必須)をして、名前空間をインポートすれば、次のようなコードで保存と読み出しができます。

GallioAmbienceを利用するコード例(C#)

[Test]
public void GallioAmbienceのテスト()
{
    // Ambienceのデータを全削除
    Ambient.Data.DeleteAll();

//オブジェクトの作成
Person p1 = new Person();
p1.Name = "高倉";
Person p2 = new Person();
p2.Name = "五代";
Person p3 = new Person();
p2.Name = "倉田";

// Ambienceに保存
Ambient.Data.Store(p1);
Ambient.Data.Store(p2);
Ambient.Data.Store(p3);

// Ambienceから取り出し
var people = from Person p in Ambient.Data
              where p.Name.Contains("倉")
              select p;

//確認
Assert.AreEqual(2 , people.Count());

このコードはデモのため1つのメソッド内で処理が完結していますが、本来のAmbienceの使い方としては、複数のテストクラス、テストアセンブリにまたがるようなステートフルなテストに適しています。例えば、最初のテストクラスで登録したオブジェクトを、別のテストクラスで利用したいというようなケースや、全てのテストで利用する共通データを管理したいというようなケースに向いています。

Ambienceの内部ではdb4oというオブジェクトデータベースを利用しています。既定では、ローカルPCにデータが保存(C:\ProgramData\Gallio\Gallio.Ambience\ Default.db)されますが、接続先を指定すればクライアント/サーバスタイルで利用することもできます。LINQの登場によりオブジェクトデータベースの使い勝手が良くなってきていますので、このAmbienceで試してみるのも面白いかもしれません。

インストールの実行

後はNextをクリックしていけばGallioのインストールが始まります。インストールが完了すれば、スタートメニューに次のフォルダが表示されているはずです。

Gallioのプログラムメニュー。プログラムやドキュメントへのリンクが表示される

今回は、.NETを取り巻くテストフレームワークの概要と、Gallioのインストールについて紹介しました。次回は、Gallioのツールを使ってテストを実行する方法と、Gallioの仕組みについて紹介していきます。