La arquitectura del framework de prueba de VTS se integra con su servicio de pruebas basado en la nube. Un controlador de host de VTS se ejecuta en una máquina host y controla una instancia de un conjunto de pruebas (por ejemplo, Tradefed), como se muestra a continuación:
Figura 1: Arquitectura del controlador de host de VTS
El controlador extrae comandos de un comandante de clúster que se ejecuta como una instancia de Google App Engine (GAE) y, luego, retransmite comandos y respuestas entre su comandante de clúster y la instancia del sistema de pruebas.
Esta arquitectura incluye las siguientes ventajas:
- Debido a que está separado de cualquier instancia de entorno de pruebas, puede controlar diferentes tipos de entornos de pruebas y es más sólido. El diseño alternativo (incorporar la lógica de control del host en un conjunto de pruebas) no impide que se propaguen los errores.
- Debido a que usa un modelo de comando y control (C&C) basado en la extracción, puede funcionar con diferentes tipos de comandantes de clústeres del lado de la nube, así como con hosts que existen detrás de un firewall (para conexiones de entrada). Es posible que el diseño alternativo (modelo de C&C basado en push) no permita que un comandante de nube acceda a instancias de controlador de host que existen en computadoras host en una red privada.