初期VMイメージを有する仮想マシンに対して実行される複数のテスト項目の各々を、ルートノードを起点とした各ノードに対応付けることにより、各テスト項目のテスト実行前に実行が必要な他のテスト項目を示した木構造を記憶するテストツリー記憶手段と、前記複数のテスト項目の各々の実行前の前記仮想マシンのVMイメージと実行後のVMイメージとの差分である差分イメージを、前記複数のテスト項目の各々に対応付けて記憶する差分イメージ記憶手段と、前記仮想マシンを用いてテストを実行するテスト項目が指定された場合、前記初期VMイメージ、及び、前記木構造上の前記ルートノードから前記指定されたテスト項目の親のテスト項目までの各テスト項目に対応する差分イメージをもとに、前記指定されたテスト項目の親のテスト項目のテスト実行後の前記仮想マシンのVMイメージを復元するテスト実行手段と、を含むテストシステム。前記テスト実行手段は、前記仮想マシンにおいて、前記木構造に従って前記複数のテスト項目の各々のテスト実行後に、前記複数のテスト項目の各々について前記差分イメージを取得し、前記差分イメージ記憶手段に保存する請求項1に記載のテストシステム。前記テスト実行手段は、前記仮想マシンにおいて、第1のテスト項目のテスト実行後に、前記木構造上の前記ルートノードから前記第1のテスト項目の親のテスト項目までのテスト項目の内の第2のテスト項目のテスト実行後の前記仮想マシンのVMイメージを復元する場合、前記第1のテスト項目実行後のVMイメージと、前記第2のテスト項目の子のテスト項目から前記第1のテスト項目までの各テスト項目に対応する差分イメージと、をもとに、前記第2のテスト項目のテスト実行後の前記仮想マシンのVMイメージを復元する請求項1に記載のテストシステム。複数の前記テスト実行手段を含み、さらに、前記仮想マシンを用いてテストを実行する複数のテスト項目が指定された場合、前記指定された複数のテスト項目の内、前記木構造上のルートノードから親のテスト項目までに、共通なテスト項目を持つテスト項目の組を抽出し、抽出された組の各々を、前記複数の前記テスト実行手段の内の異なるテスト実行手段に割り当てるテスト管理手段を含む請求項1に記載のテストシステム。初期VMイメージを有する仮想マシンに対して実行される複数のテスト項目の各々を、ルートノードを起点とした各ノードに対応付けることにより、各テスト項目のテスト実行前に実行が必要な他のテスト項目を示した木構造を記憶し、前記複数のテスト項目の各々の実行前の前記仮想マシンのVMイメージと実行後のVMイメージとの差分である差分イメージを、前記複数のテスト項目の各々に対応付けて記憶し、前記仮想マシンを用いてテストを実行するテスト項目が指定された場合、前記初期VMイメージ、及び、前記木構造上の前記ルートノードから前記指定されたテスト項目の親のテスト項目までの各テスト項目に対応する差分イメージをもとに、前記指定されたテスト項目の親のテスト項目のテスト実行後の前記仮想マシンのVMイメージを復元するテスト方法。さらに、前記仮想マシンにおいて、前記木構造に従って前記複数のテスト項目の各々のテスト実行後に、前記複数のテスト項目の各々について前記差分イメージを取得する請求項5に記載のテスト方法。さらに、前記仮想マシンにおいて、第1のテスト項目のテスト実行後に、前記木構造上の前記ルートノードから前記第1のテスト項目の親のテスト項目までのテスト項目の内の第2のテスト項目のテスト実行後の前記仮想マシンのVMイメージを復元する場合、前記第1のテスト項目実行後のVMイメージと、前記第2のテスト項目の子のテスト項目から前記第1のテスト項目までの各テスト項目に対応する差分イメージと、をもとに、前記第2のテスト項目のテスト実行後の前記仮想マシンのVMイメージを復元する請求項5に記載のテスト方法。コンピュータに、初期VMイメージを有する仮想マシンに対して実行される複数のテスト項目の各々を、ルートノードを起点とした各ノードに対応付けることにより、各テスト項目のテスト実行前に実行が必要な他のテスト項目を示した木構造を記憶し、前記複数のテスト項目の各々の実行前の前記仮想マシンのVMイメージと実行後のVMイメージとの差分である差分イメージを、前記複数のテスト項目の各々に対応付けて記憶し、前記仮想マシンを用いてテストを実行するテスト項目が指定された場合、前記初期VMイメージ、及び、前記木構造上の前記ルートノードから前記指定されたテスト項目の親のテスト項目までの各テスト項目に対応する差分イメージをもとに、前記指定されたテスト項目の親のテスト項目のテスト実行後の前記仮想マシンのVMイメージを復元する処理を実行させるテストプログラム。さらに、前記仮想マシンにおいて、前記木構造に従って前記複数のテスト項目の各々のテスト実行後に、前記複数のテスト項目の各々について前記差分イメージを取得する請求項8に記載のテストプログラム。さらに、前記仮想マシンにおいて、第1のテスト項目のテスト実行後に、前記木構造上の前記ルートノードから前記第1のテスト項目の親のテスト項目までのテスト項目の内の第2のテスト項目のテスト実行後の前記仮想マシンのVMイメージを復元する場合、前記第1のテスト項目実行後のVMイメージと、前記第2のテスト項目の子のテスト項目から前記第1のテスト項目までの各テスト項目に対応する差分イメージと、をもとに、前記第2のテスト項目のテスト実行後の前記仮想マシンのVMイメージを復元する請求項8に記載のテストプログラム。プログラムのテストシナリオが多岐にわたる場合、あるテスト項目が終了した時点の同一の状態に対して、複数の異なるテスト項目を実行する必要がある。しかしながら、上述の特許文献3の技術は、連続した時間経過に従って、メモリ情報の差分を検出、保存する技術であり、あるテスト項目が終了した時点の同一の状態に対して、複数の異なるテスト項目を実行する場合については考慮されていない。本発明の目的は、上述の課題を解決し、仮想マシンに用いたテスト環境において、テストシナリオが多岐にわたる場合であっても、VMイメージの保存コストを低減できるテストシステム、テスト方法、及び、プログラムを提供することにある。本発明のテストシステムは、初期VMイメージを有する仮想マシンに対して実行される複数のテスト項目の各々を、ルートノードを起点とした各ノードに対応付けることにより、各テスト項目のテスト実行前に実行が必要な他のテスト項目を示した木構造を記憶するテストツリー記憶手段と、前記複数のテスト項目の各々の実行前の前記仮想マシンのVMイメージと実行後のVMイメージとの差分である差分イメージを、前記複数のテスト項目の各々に対応付けて記憶する差分イメージ記憶手段と、前記仮想マシンを用いてテストを実行するテスト項目が指定された場合、前記初期VMイメージ、及び、前記木構造上の前記ルートノードから前記指定されたテスト項目の親のテスト項目までの各テスト項目に対応する差分イメージをもとに、前記指定されたテスト項目の親のテスト項目のテスト実行後の前記仮想マシンのVMイメージを復元するテスト実行手段と、を含む。本発明のテスト方法は、初期VMイメージを有する仮想マシンに対して実行される複数のテスト項目の各々を、ルートノードを起点とした各ノードに対応付けることにより、各テスト項目のテスト実行前に実行が必要な他のテスト項目を示した木構造を記憶し、前記複数のテスト項目の各々の実行前の前記仮想マシンのVMイメージと実行後のVMイメージとの差分である差分イメージを、前記複数のテスト項目の各々に対応付けて記憶し、前記仮想マシンを用いてテストを実行するテスト項目が指定された場合、前記初期VMイメージ、及び、前記木構造上の前記ルートノードから前記指定されたテスト項目の親のテスト項目までの各テスト項目に対応する差分イメージをもとに、前記指定されたテスト項目の親のテスト項目のテスト実行後の前記仮想マシンのVMイメージを復元する。本発明のテストプログラムは、コンピュータに、初期VMイメージを有する仮想マシンに対して実行される複数のテスト項目の各々を、ルートノードを起点とした各ノードに対応付けることにより、各テスト項目のテスト実行前に実行が必要な他のテスト項目を示した木構造を記憶し、前記複数のテスト項目の各々の実行前の前記仮想マシンのVMイメージと実行後のVMイメージとの差分である差分イメージを、前記複数のテスト項目の各々に対応付けて記憶し、前記仮想マシンを用いてテストを実行するテスト項目が指定された場合、前記初期VMイメージ、及び、前記木構造上の前記ルートノードから前記指定されたテスト項目の親のテスト項目までの各テスト項目に対応する差分イメージをもとに、前記指定されたテスト項目の親のテスト項目のテスト実行後の前記仮想マシンのVMイメージを復元する処理を実行させる。本発明の効果は、仮想マシンに用いたテスト環境において、テストシナリオが多岐にわたる場合であっても、VMイメージの保存コストを低減できることである。第1の実施の形態次に、本発明の第1の実施の形態について説明する。はじめに、本発明の第1の実施の形態の構成について説明する。図2は、本発明の第1の実施の形態における、テストシステム1の構成を示すブロック図である。図2を参照すると、テスト実行システム1は、テスト管理装置100と1以上のテスト実行装置200とを含む。テスト管理装置100とテスト実行装置200とは、ネットワーク等により接続される。テスト管理装置100は、テスト実行装置200にテストの実行を指示する。テスト実行装置200は、テスト対象であるテストを行うプログラムを含む仮想マシンのVMイメージを生成し、仮想マシンを用いてテストを行う。テスト管理装置100は、テスト管理部101、テストツリー記憶部111、テスト情報記憶部112、初期イメージ記憶部113、及び、差分イメージ記憶部114を含む。テスト管理部101は、テスト項目に応じて、初期VMイメージ、及び、差分イメージをテスト実行装置200に送信する。また、テスト管理部101は、テスト実行装置200にテストの実行を指示する。ここで、テストツリー記憶部111は、テストツリー121を記憶する。テストツリー121は、テスト実行装置200において、テスト対象の仮想マシンの初期状態初期VMイメージから実行される複数のテスト項目の各々の実行順序をツリー木構造形式で示す情報である。図3は、本発明の第1の実施の形態におけるテストツリー121の例を示す図である。テストツリー121のルートノードは、上述の初期状態に対応する。そして、テストツリー121上のルートノードを起点とした各ノードには、上述の初期状態から実行される複数のテスト項目の各々の識別子が、実行順序に従って付与される。テストツリー121上の親のノードのテスト項目は、子のノードのテスト項目のテスト実行前に実行が必要なテスト項目を示す。図3の例では、上述の初期状態から、例えば、テスト項目テスト1、テスト1-1、テスト1-1-1の順序、テスト項目テスト2、テスト2-1、テスト2-1-1の順序等でテストが実行される。テスト情報記憶部112は、テスト情報122を記憶する。図4は、本発明の第1の実施の形態におけるテスト情報122の例を示す図である。テスト情報122は、テスト識別子対応に、テストの内容を含む。ここで、本発明の実施の形態におけるVMイメージの変化について説明する。図5は、本発明の第1の実施の形態におけるVMイメージの変化の例を示す図である。図5の例は、図3のテストツリー121に従ってテスト項目のテストが行われた場合の、VMイメージの変化を示す。図5に示すように、初期VMイメージに対して、例えば、テスト1、テスト1-1、の順にテストが実行されると、VMイメージは、初期VMイメージから、VMI1、VMI1-1の順に変化する。初期イメージ記憶部113は、初期イメージ情報123を記憶する。図6は、本発明の第1の実施の形態における初期イメージ情報123の例を示す図である。初期イメージ情報123には、初期VMイメージが登録される。差分イメージ記憶部114は、差分イメージ情報124を記憶する。図7は、本発明の第1の実施の形態における差分イメージ情報124の例を示す図である。差分イメージ情報124には、テスト識別子対応に、差分イメージが登録される。ここで、差分イメージは、対応するテスト識別子で示されるテスト項目のテスト前後のVMイメージの差分である。差分イメージは、例えば、VMイメージにおける、テストにより変更されたデータのアドレスと、当該アドレスにおける変更前、及び、変更後のデータの値を含む。差分イメージは、例えば、後述する処理部202のVM制御手段により生成される。テスト実行装置200は、テスト制御部201、及び、処理部202を含む。テスト制御部201は、テスト管理装置100から受信した、初期VMイメージ、及び、差分イメージから、テスト対象の仮想マシンのVMイメージを生成する。テスト制御部201は、生成した仮想マシンを処理部202に配備し、テストを実行する。処理部202は、図示しないCPUCentralProcessingUnit、及び、CPU上で1以上の仮想マシンの動作を制御するVM制御手段を含む。VM制御手段は、例えば、VMモニタやハイパーバイザである。VM制御手段は、テスト対象である仮想マシンのVMイメージを用いて、仮想マシンを起動、実行する。ここで、VMイメージは、アプリケーション、ミドルウェア、及び、OSのイメージを含む。また、VMイメージは、データベースファイルを含んでいてもよい。さらに、VMイメージは、アプリケーションの変数領域等、RAMRandomAccessMemory上のデータを含んでいてもよい。なお、テスト管理部101と、テスト制御部201とは、CPUとプログラムを記憶した記憶媒体を含み、プログラムに基づく制御によって動作するコンピュータであってもよい。また、テストツリー記憶部111、テスト情報記憶部112、初期イメージ記憶部113、及び、差分イメージ記憶部114は、それぞれ個別の記憶媒体でも、1つの記憶媒体によって構成されてもよい。また、テスト管理部101、テストツリー記憶部111、テスト情報記憶部112、初期イメージ記憶部113、差分イメージ記憶部114、テスト制御部201、及び、処理部202の内の1つまたは複数が、1つの装置を構成し、他の装置とネットワークを介して接続されていてもよい。次に、本発明の第1の実施の形態におけるテストシステム1の動作について説明する。<差分イメージ生成処理>はじめに、差分イメージ情報124を生成する差分イメージ生成処理について説明する。図8は、本発明の第1の実施の形態における差分イメージ生成処理を示すフローチャートである。ここでは、テストツリー記憶部111、テスト情報記憶部112には、図4、図5のテストツリー121、テスト情報122がそれぞれ設定されており、初期イメージ記憶部113には、図6の初期イメージ情報123が設定されていると仮定する。テスト管理装置100のテスト管理部101は、テストシステム1のユーザから、テストを実行するテスト項目の範囲の指定を、テストツリー121上のルートノードを起点とした部分木により受け付けるステップS101。例えば、テスト管理部101は、テスト範囲として、図4のテストツリー121上の部分木Aを受け付ける。テスト管理部101は、テスト制御部201に、ステップS101で指定されたテスト項目の範囲部分木を送信し、テストの実行を指示する。テスト制御部201は、部分木におけるルートノードの子ノードからテスト項目を1つ選択し、対象テスト項目に設定するステップS102。例えば、テスト制御部201は、部分木Aにおけるルートノードの子ノードからテスト項目テスト1を選択し、対象テスト項目に設定する。テスト管理部101は、初期イメージ情報123から初期VMイメージを取得し、テスト実行装置200のテスト制御部201に送信するステップS103。テスト制御部201は、処理部202に初期VMイメージを配備し、仮想マシンを起動するステップS104。例えば、テスト制御部201は、図6の初期VMイメージを処理部202に配備する。テスト制御部201は、処理部202上の仮想マシンを用いて、対象テスト項目のテストを実行するステップS105。ここで、テスト制御部201は、テスト情報記憶部112のテスト情報122を参照し、対象テスト項目の処理を実行させるためのデータや指示を仮想マシンに入力し、当該入力に対する応答を検出する。例えば、テスト管理部101は、図5のテスト情報122を参照し、対象テスト項目テスト1に対する指示データA追加を仮想マシンに入力し、処理結果を検出する。テスト制御部201は、対象テスト項目の実行前のVMイメージと実行後のVMイメージとを比較することにより差分イメージを生成し、差分イメージ情報124に登録するステップS106。ここで、テスト制御部201は、差分イメージを対象テスト項目の識別子に対応付けて登録する。例えば、テスト制御部201は、初期VMイメージと、対象テスト項目テスト1のテスト実行後のVMイメージVMI1とから、差分イメージD1を取得し、図7に示すように、テスト項目テスト1に対応付けて、差分イメージ情報124に登録する。次に、テスト制御部201は、部分木の範囲内の全てのテスト項目についてテストが実行されたかどうかを判定するステップS107。ステップS107で全てのノードのテスト項目についてテストが実行されている場合ステップS107/Yes、テスト制御部201は、処理を終了する。ステップS107でテストが実行されていないテスト項目がある場合ステップS107/No、テスト制御部201は、テスト範囲で指定された部分木内でテストが実行されていないテスト項目であり、かつ、対象テスト項目の子次のテスト項目があるかどうかを判定するステップS108。ステップS108において、子のテスト項目がある場合ステップS108/Yes、テスト制御部201は、子のテスト項目からテスト項目を1つ選択して対象テスト項目に設定しステップS111、ステップS105からの処理を実行する。例えば、テスト制御部201は、対象テスト項目テスト1のテスト実行後に、テスト項目テスト1-1を対象テスト項目に設定する。テスト制御部201は、対象テスト項目テスト1-1に対応する指示データB追加を仮想マシンに入力し、処理結果を検出する。テスト制御部201は、対象テスト項目テスト1-1の実行前後のVMイメージVMI1VMI1-1から、差分イメージD1-1を取得し、図7に示すように、テスト項目テスト1-1に対応付けて、差分イメージ情報124に登録する。ステップS108において、子のテスト項目がない場合ステップS108/No、テスト制御部201は、対象テスト項目のテスト実行前の仮想システムのVMイメージを復元するステップS109。ここで、テスト制御部201は、現在のVMイメージと、差分イメージ情報124の対象テスト項目に対する差分イメージとをもとに、対象テスト項目のテスト実行前の仮想システムのVMイメージを復元する。テスト制御部201は、例えば、現在のVMイメージのデータの内、差分イメージにより示されるアドレスのデータを、当該アドレスにおける変更前のデータの値で置き換えることにより、テスト実行前のVMイメージを復元する。そして、テスト制御部201は、対象テスト項目の親前のテスト項目を対象テスト項目に設定しステップS110、ステップS108からの処理を実行する。例えば、テスト制御部201は、対象テスト項目テスト1-1のテスト実行後に、現在のVMイメージVMI1-1と、図7の差分イメージ情報124のテスト項目テスト1-1に対する差分イメージD1-1とをもとに、対象テスト項目テスト1-1のテスト実行前のVMイメージVMI1を復元する。そして、テスト制御部201は、対象テスト項目テスト1を対象テスト項目に設定する。そして、テスト制御部201は、テスト項目テスト1-2を対象テスト項目に設定し、テストを実行する。テスト制御部201は、対象テスト項目テスト1-2の実行前後のVMイメージVMI1VMI1-2から、差分イメージD1-2を取得し、図7に示すように、テスト項目テスト1-2に対応付けて、差分イメージ情報124に登録する。そして、テスト制御部201は、対象テスト項目テスト1-2のテスト実行後に、現在のVMイメージVMI1-2と、図7の差分イメージ情報124のテスト項目テスト1-2に対する差分イメージD1-2とをもとに、対象テスト項目テスト1-2のテスト実行前のVMイメージVMI1を復元する。テスト制御部201は、対象テスト項目テスト1を対象テスト項目に設定する。さらに、テスト制御部201は、現在のVMイメージVMI1と、図7の差分イメージ情報124のテスト項目テスト1に対する差分イメージD1とをもとに、対象テスト項目テスト1のテスト実行前の初期VMイメージを復元する。そして、テスト制御部201は、テスト項目テスト2テスト2-1テスト2-2の順序でテストを実行し、図7に示すように、差分イメージD2D2-1D2-2を、それぞれ、差分イメージ情報124に登録する。このように、テスト制御部201は、ステップS101で指定された部分木の範囲内の全テスト項目について、テストを実行し、差分イメージを差分イメージ情報124に登録する。<VMイメージ復元処理>次に、指定されたテスト項目を実行するときに、差分イメージ情報124をもとに、仮想マシンのVMイメージを復元する処理について説明する。図9は、本発明の第1の実施の形態におけるVMイメージ復元処理を示すフローチャートである。ここでは、上述の差分イメージ生成処理によって、差分イメージ記憶部114に図7の差分イメージ情報124が登録されていると仮定する。テスト管理装置100のテスト管理部101は、テストシステム1のユーザから、テストツリー121上で、テストを実行するテスト項目の指定を受け付けるステップS201。テスト管理部101は、テスト制御部201に、ステップS201で指定されたテスト項目を送信し、テストの実行を指示する。例えば、テスト管理部101は、テスト項目として、図4のテストツリー121上のテスト項目テスト1-1-1を受け付ける。テスト管理部101は、初期イメージ情報123の初期VMイメージを取得し、テスト実行装置200のテスト制御部201に送信するステップS202。例えば、テスト管理部101は、図6の初期VMイメージをテスト制御部201に送信する。テスト管理部101は、テストツリー121上のルートノードから、指定されたテスト項目の親前のテスト項目までの各テスト項目に対応する差分イメージを差分イメージ情報124から取得し、テスト制御部201に送信するステップS203。例えば、テスト管理部101は、図7の差分イメージ情報124から、テスト項目テスト1テスト1-1に対応する差分イメージD1D1-1を取得し、テスト制御部201に送信する。テスト制御部201は、テスト管理部101から受信した初期VMイメージと各テスト項目に対応する差分イメージとをもとに、指示されたテスト項目の親前のテスト項目のテスト実行後のVMイメージを復元するステップS204。ここで、テスト制御部201は、初期VMイメージに、各テスト項目に対応する差分イメージをテストツリー121上の実行順序に従って適用して、VMイメージを復元する。テスト制御部201は、例えば、VMイメージのデータの内、差分イメージにより示されるアドレスのデータを、当該アドレスにおける変更後のデータの値で置き換えることにより、各テスト実行後のVMイメージを復元する。例えば、テスト制御部201は、初期VMイメージに、テスト項目テスト1テスト1-1に対応する差分イメージD1D1-1を順番に適用し、テスト項目テスト1-1のテスト実行後のVMイメージVMI1-1を復元する。テスト制御部201は、復元したVMイメージを処理部202に配備し、仮想マシンを起動するステップS205。例えば、テスト制御部201は、VMイメージVMI1-1を処理部202に配備する。テスト制御部201は、処理部202上の仮想マシンを用いて、指示されたテスト項目のテストを実行するステップS206。例えば、テスト制御部201は、仮想マシンVMイメージVMI1-1を用いて、テスト項目テスト1-1-1のテストを実行する。なお、テスト制御部201は、上述の差分イメージ生成処理と同様に、さらに、指定されたテスト項目を起点とする部分木の範囲のテスト項目のテストを実行し、差分イメージ情報124を更新してもよい。以上により、本発明の第1の実施の形態の動作が完了する。次に、本発明の第1の実施の形態の特徴的な構成を説明する。図1は、本発明の第1の実施の形態の特徴的な構成を示すブロック図である。図1を参照すると、テストシステム1は、テストツリー記憶部111、差分イメージ記憶部114、及び、テスト制御部201を含む。テストツリー記憶部111は、初期VMイメージを有する仮想マシンに対して実行される複数のテスト項目の各々を、ルートノードを起点とした各ノードに対応付けることにより、各テスト項目のテスト実行前に実行が必要な他のテスト項目を示した木構造を記憶する。差分イメージ記憶部114は、複数のテスト項目の各々の実行前の仮想マシンのVMイメージと実行後のVMイメージとの差分である差分イメージを、複数のテスト項目の各々に対応付けて記憶する。テスト制御部201は、仮想マシンを用いてテストを実行するテスト項目が指定された場合、初期VMイメージ、及び、木構造上のルートノードから指定されたテスト項目の親のテスト項目までの各テスト項目に対応する差分イメージをもとに、指定されたテスト項目の親のテスト項目のテスト実行後の仮想マシンのVMイメージを復元する。本発明の第1の実施の形態によれば、仮想マシンに用いたテスト環境において、テストシナリオが多岐にわたる場合であっても、VMイメージの保存コストを低減できる。その理由は、テストツリー記憶部111が、仮想マシンに対して実行される複数のテスト項目の実行順序を示す木構造を記憶し、テスト制御部201が、初期VMイメージ、及び、木構造上のルートノードから指定されたテスト項目の親のテスト項目までの各テスト項目実行前後の差分イメージをもとに、指定されたテスト項目の親のテスト項目のテスト実行後の仮想マシンのVMイメージを復元するためである。これにより、テスト項目の各々に対して仮想マシンのVMイメージを保存する場合よりも、VMイメージを保存するためのコストが低減される。また、本発明の第1の実施の形態によれば、テストシナリオが多岐にわたる場合であっても、VMイメージの転送コストを低減できる。その理由は、テスト制御部201が、テスト項目のテスト実行後に、当該テスト項目を実行前のVMイメージを復元する場合、差分イメージをもとに、実行前のVMイメージを復元するためである。これにより、テスト項目の各々に対して仮想マシンのVMイメージを転送する場合よりも、VMイメージを転送するためのコストが低減される。第2の実施の形態次に、本発明の第2の実施の形態について説明する。本発明の第2の実施の形態においては、複数のテスト実行装置200で異なる複数のテスト項目のテストを行う場合に、同じ差分データを用いたテストが、同じテスト実行装置200で行われるように、各テスト実行装置200にテスト項目が割り当てられる。次に、本発明の第2の実施の形態の構成について説明する。図10は、本発明の第2の実施の形態における、テストシステム1の構成を示すブロック図である。図10を参照すると、テスト実行システム1は、テスト管理装置100と複数のテスト実行装置200200a、200b、...とを含む。次に、本発明の第2の実施の形態におけるテストシステム1の動作について説明する。<VMイメージ復元処理>複数のテスト項目を実行するときに、テスト実行装置200にテスト項目を割り当て、各テスト実行装置200で仮想マシンのVMイメージを復元する処理について説明する。図11は、本発明の第2の実施の形態におけるVMイメージ復元処理を示すフローチャートである。はじめに、上述の差分イメージ生成処理によって、差分イメージ記憶部114に図7の差分イメージ情報124が登録されていると仮定する。テスト管理装置100のテスト管理部101は、テストシステム1のユーザから、テストツリー121上で、テストを実行する複数のテスト項目の指定を受け付けるステップS301。例えば、テスト管理部101は、テスト項目として、図4のテストツリー121上のテスト1-1-1テスト1-2-1テスト2-1-1テスト2-2-1を受け付ける。テスト管理部101は、指定されたテスト項目の各々のテストを実行するテスト実行装置200を決定する。ここで、テスト管理部101は、指定されたテスト項目の内、テストツリー121上のルートノードから親前のテスト項目までに、共通なテスト項目を持つテスト項目の組を抽出し、抽出された組のテスト項目のテストが同じテスト実行装置200で実行されるように、テスト実行装置200を決定するステップS302。テスト管理部101は、決定したテスト実行装置200の各々のテスト制御部201に、実行するテスト項目を送信し、テストの実行を指示する。例えば、テスト管理部101は、ルートノードから親前のテスト項目までに、共通なテスト項目テスト1を持つ、テスト項目テスト1-1-1テスト1-2-1の組、及び、共通なテスト項目テスト2を持つ、テスト項目テスト2-1-1テスト2-2-1の組を抽出する。そして、テスト管理部101は、テスト項目テスト1-1-1テスト1-2-1をテスト実行装置200a、テスト項目テスト2-1-1テスト2-2-1をテスト実行装置200bに割り当てる。テスト管理部101は、初期イメージ情報123の初期VMイメージ取得し、各組のテストを実行するテスト実行装置200のテスト制御部201に送信するステップS303。例えば、テスト管理部101は、図6の初期VMイメージをテスト実行装置200a、200bのテスト制御部201a、200bに送信する。テスト管理部101は、ステップS302で抽出されたテスト項目の組の各々について、テストツリー121上のルートノードのテスト項目から指定されたテスト項目の親前のテスト項目までの各テスト項目に対応する差分イメージを差分イメージ情報124から取得し、各組のテストを実行するテスト実行装置200のテスト制御部201に送信するステップS304。ここで、テスト管理部101は、ステップS302で抽出されたテスト項目の組の各々において、共通なテスト項目に対応する差分イメージについては、1つだけ送信する。例えば、テスト管理部101は、共通なテスト項目テスト1に対応する差分イメージD1、及び、テスト1-1テスト1-2に対応する差分イメージD1-1D1-2をテスト制御部201aに送信する。また、テスト管理部101は、共通なテスト項目テスト2に対応する差分イメージD2、及び、テスト2-1テスト2-2に対応する差分イメージD2-1D2-2をテスト制御部201bに送信する。各テスト制御部201は、テスト管理部101から受信した初期VMイメージと差分イメージとをもとに、指示されたテスト項目の親前のテスト項目のテスト実行後のVMイメージを復元するステップS305。例えば、テスト制御部201aは、初期VMイメージと差分イメージD1D1-1からテスト項目テスト1-1のテスト実行後のVMイメージVMI1-1、初期VMイメージと差分イメージD1D1-2からテスト項目テスト1-2のテスト実行後のVMイメージVMI1-2を復元する。また、テスト制御部201bは、初期VMイメージと差分イメージD2D2-1からテスト項目テスト2-1のテスト実行後のVMイメージVMI2-1、初期VMイメージと差分イメージD2D2-2からテスト項目テスト2-2のテスト実行後のVMイメージVMI2-2を復元する。テスト制御部201は、処理部202に復元したVMイメージを配備し、仮想マシンを起動するステップS306。例えば、図10に示すように、テスト制御部201aは、VMイメージVMI1-1VMI1-2を用いた2つの仮想マシンを処理部202aに配備する。また、テスト制御部201bは、VMイメージVMI2-1VMI2-2を用いた2つの仮想マシンを処理部202bに配備する。テスト制御部201は、処理部202上の仮想マシンを用いて、指示されたテスト項目のテストを実行するステップS307。例えば、テスト制御部201aは、2つの仮想マシンVMイメージVMI1-1VMI1-2を用いて、テスト項目テスト1-1-1テスト1-2-1を、それぞれ実行する。また、テスト制御部201bは、2つの仮想マシンVMイメージVMI2-1VMI2-2を用いて、テスト項目テスト2-1-1テスト2-2-1を、それぞれ実行する。以上により、本発明の第2の実施の形態の動作が完了する。本発明の第2の実施の形態によれば、複数のテスト実行装置200で異なる複数のテスト項目のテストを行う場合に、VMイメージの転送コストを低減できる。その理由は、テスト管理部101が、同じ差分データを用いたテストが、同じテスト実行装置200で行われるように、各テスト実行装置200にテスト項目を割り当てるためである。以上、実施の形態を参照して本願発明を説明したが、本願発明は上記実施の形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。例えば、本発明の実施の形態では、テスト実行装置200のテスト制御部201が、処理部202上の仮想マシンに対してテストを行っているが、テスト実行装置200の外部の装置が処理部202上の仮想マシンに対してテストを実行してもよい。この場合、テスト制御部201が、仮想マシンにおける各テスト項目のテスト終了を検出し、テスト実行前後の差分イメージを生成する。また、本発明の実施の形態では、テスト制御部201が、生成した差分イメージを、差分イメージ記憶部114の差分イメージ情報124に登録しているが、テスト制御部201は、差分イメージを、テスト実行装置200の図示しない一時的な記憶部に保存し、テスト実行前のVMイメージの復元に用いてもよい。この場合、テスト制御部201は、複数の差分イメージをまとめて差分イメージ記憶部114の差分イメージ情報124に登録してもよい。