VTS テスト フレームワークのアーキテクチャは、クラウドベースのテスト処理サービスと統合されています。VTS ホスト コントローラは、ホストマシン上で動作し、テストハーネス(TradeFed など)のインスタンスを制御します(下図を参照)。
図 1. VTS ホスト コントローラのアーキテクチャ
コントローラは、Google App Engine(GAE)インスタンスとして実行されているクラスタ コマンダーからコマンドを取得し、コマンドと応答をクラスタ コマンダーとテストハーネス インスタンスの間でリレーします。
このアーキテクチャには次のような利点があります。
- テストハーネス インスタンスから切り離されているため、異なる種類のテストハーネスの制御が可能で、堅牢性もより優れています。ホスト制御ロジックがテストハーネスに組み込まれいてる代替設計ではエラーの伝播がブロックされず、やや堅牢性に劣ります。
- pull ベースのコマンド アンド コントロール(C&C)モデルを使用しているため、さまざまな種類のクラウド側のクラスタ コマンダーはもちろん、ファイアウォールの内側に存在するホストとも連携(内向き接続)できます。代替設計(push ベースの C&C モデル)では、ホスト コントローラ インスタンスがプライベート ネットワークのホスト コンピュータ上にある場合に、クラウド コマンダーからインスタンスへのアクセスが許可されない可能性があります。