Interfaz de usuario del panel de VTS

El panel VTS proporciona una interfaz de usuario cohesiva que utiliza el diseño de materiales para mostrar de manera efectiva la información sobre los resultados de las pruebas, la elaboración de perfiles y la cobertura. El estilo del tablero utiliza bibliotecas Javascript de código abierto que incluyen Materialise CSS y jQueryUI para procesar los datos entregados por los servlets de Java en Google App Engine.

Tablero de inicio

La página de inicio del Tablero muestra una lista de conjuntos de pruebas que un usuario ha agregado a favoritos.

Figura 1. Tablero VTS, página de inicio.

Desde esta lista, los usuarios pueden:

  • Seleccione un conjunto de pruebas para ver los resultados de ese conjunto.
  • Haga clic en MOSTRAR TODO para ver todos los nombres de las pruebas VTS.
  • Seleccione el icono Editar para modificar la lista de Favoritos.
    Figura 2. Tablero VTS, página de edición de Favoritos.

Resultados de la prueba

Los resultados de la prueba muestran la información más reciente sobre el conjunto de pruebas seleccionado, incluida una lista de puntos de perfil, una tabla de resultados de casos de prueba en orden cronológico y un gráfico circular que muestra el desglose de los resultados de la última ejecución (los usuarios pueden cargar datos más antiguos paginando a la derecha). ).

Figura 3. Tablero VTS, resultados de la prueba.

Los usuarios pueden filtrar datos mediante consultas o modificando el tipo de prueba (pre-envío, post-envío o ambos). Las consultas de búsqueda admiten tokens generales y calificadores específicos de campo; Los campos de búsqueda admitidos son: Id. de compilación del dispositivo, sucursal, nombre de destino, nombre del dispositivo e Id. de compilación de prueba. Estos se especifican en el formato: FIELD-ID =" SEARCH QUERY ". Las comillas se utilizan para tratar varias palabras como un solo token para que coincidan con los datos de las columnas.

Perfilado de datos

Los usuarios pueden seleccionar un punto de perfil para acceder a una vista interactiva de los datos cuantitativos para ese punto en un gráfico de líneas o histograma (ejemplos a continuación). De forma predeterminada, la vista muestra la información más reciente; los usuarios pueden usar el selector de fechas para cargar ventanas de tiempo específicas.

Figura 4. Tablero VTS, rendimiento de gráfico de líneas.

Los gráficos de líneas muestran datos de una colección de valores de rendimiento no ordenados, que pueden ser útiles cuando una prueba de rendimiento produce un vector de valores de rendimiento que varía en función de otra variable (p. ej., rendimiento versus tamaño del mensaje).

Figura 5. Tablero VTS, rendimiento del histograma.

Cobertura de prueba

Los usuarios pueden ver la información de cobertura desde el enlace de porcentaje de cobertura en los resultados de la prueba.

Figura 6. Tablero VTS, porcentajes de cobertura.

Para cada caso de prueba y archivo fuente, los usuarios pueden ver un elemento expandible que contiene un código fuente codificado por colores según la cobertura proporcionada por la prueba seleccionada:

Figura 7. Tablero VTS, código fuente de cobertura.
  • Las líneas descubiertas se resaltan en rojo .
  • Las líneas cubiertas se resaltan en verde .
  • Las líneas no ejecutables no están coloreadas .

La información de cobertura se agrupa en secciones según cómo se brindó en tiempo de ejecución. Las pruebas pueden cargar cobertura:

  • Por función . Los encabezados de las secciones tienen el formato "Cobertura: FUNCTION-NAME ".
  • En total (proporcionado al final de la ejecución de la prueba). Solo hay un encabezado presente: "Cobertura: Todo".

El tablero obtiene el código fuente del lado del cliente de un servidor, que utiliza la API REST de Gerrit de código abierto.

Monitoreo y prueba

El panel VTS proporciona los siguientes monitores y pruebas unitarias.

  • Pruebe las alertas por correo electrónico . Las alertas se configuran en un trabajo Cron que se ejecuta en un intervalo fijo de dos (2) minutos. El trabajo lee la tabla de estado de VTS para determinar si se han cargado nuevos datos en cada tabla, lo que se hace verificando que la marca de tiempo de carga de datos sin procesar de la prueba sea más reciente que la última marca de tiempo de actualización de estado. Si la marca de tiempo de carga es más reciente, el trabajo consulta los nuevos datos entre ahora y la última carga de datos sin procesar. Se determinan nuevas fallas de casos de prueba, fallas continuas de casos de prueba, fallas transitorias de casos de prueba, arreglos de casos de prueba y pruebas inactivas; esta información luego se envía en formato de correo electrónico a los suscriptores de cada prueba.
  • Salud del servicio web . Google Stackdriver se integra con Google App Engine para proporcionar un control sencillo del panel VTS. Se puede acceder a las comprobaciones simples de tiempo de actividad para verificar las páginas, mientras que se pueden crear otras pruebas para verificar la latencia en cada página, servlet o base de datos. Estas comprobaciones garantizan que siempre se pueda acceder al panel (de lo contrario, se notificará a un administrador).
  • Analítica Puede integrar una página del Panel de VTS con Google Cloud Analytics especificando una ID de Analytics válida en la configuración de la página (el archivo pom.xml). La integración proporciona un análisis más sólido del uso de la página, la interacción del usuario, la localidad, las estadísticas de la sesión, etc.