Hostcontroller-Architektur

Die Architektur des VTS-Test-Frameworks ist in den cloudbasierten Testbereitstellungsdienst integriert. Ein VTS-Hostcontroller wird auf einem Hostcomputer ausgeführt und steuert eine Test-Harness-Instanz (z. B. Tradefed), wie unten dargestellt:

Hostcontroller-Architektur

Abbildung 1: VTS-Hostcontroller-Architektur.

Der Controller ruft Befehle von einem Cluster-Commander ab, der als Google App Engine-Instanz (GAE) ausgeführt wird, und leitet dann Befehle und Antworten zwischen dem Cluster-Commander und der Testharness-Instanz weiter.

Diese Architektur bietet folgende Vorteile:

  • Da sie von keiner Test-Harness-Instanz entkoppelt ist, kann sie verschiedene Arten von Test-Harnesses steuern und ist robuster. Das alternative Design (Einbetten der Host-Steuerungslogik in eine Testharness) verhindert nicht, dass Fehler weitergegeben werden.
  • Da es ein Pull-basiertes Command-and-Control-Modell (C&C) verwendet, kann es mit verschiedenen Arten von Cloud-seitigen Cluster-Commandern sowie mit Hosts, die sich hinter einer Firewall befinden (für eingehende Verbindungen), verwendet werden. Das alternative Design (pushbasiertes C&C-Modell) erlaubt es einem Cloud-Commander möglicherweise nicht, auf Host-Controller-Instanzen zuzugreifen, die sich auf Hostcomputern in einem privaten Netzwerk befinden.