Interfaz de usuario del panel VTS

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

Inicio del tablero

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

Figura 1. Panel 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 ícono Editar para modificar la lista de Favoritos.
    Figura 2. Panel VTS, edición de la página 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 perfilado, 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. Panel VTS, resultados de la prueba.

Los usuarios pueden filtrar datos mediante consultas o modificando el tipo de prueba (preenvío, posenvío o ambos). Las consultas de búsqueda admiten tokens generales y calificadores de campos específicos; 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 único token que coincide con los datos de las columnas.

Perfil de datos

Los usuarios pueden seleccionar un punto de perfil para llegar a una vista interactiva de los datos cuantitativos para ese punto en un gráfico lineal 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. Panel VTS, rendimiento del gráfico de líneas.

Los gráficos de líneas muestran datos de una colección de valores de rendimiento desordenados, lo que puede resultar útil cuando una prueba de rendimiento produce un vector de valores de rendimiento que varían en función de otra variable (por ejemplo, rendimiento versus tamaño del mensaje).

Figura 5. Panel VTS, rendimiento del histograma.

Cobertura de prueba

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

Figura 6. Panel VTS, porcentajes de cobertura.

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

Figura 7. Panel VTS, código fuente de cobertura.
  • Las líneas descubiertas están resaltadas en rojo .
  • Las líneas cubiertas están resaltadas en verde .
  • Las líneas no ejecutables no tienen color .

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

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

El Panel 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 pruebas

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 realiza verificando que la marca de tiempo de carga de datos sin procesar de la prueba sea más reciente que la marca de tiempo de la última actualización de estado. Si la marca de tiempo de carga es más reciente, el trabajo consulta datos nuevos desde ahora hasta 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, correcciones de casos de prueba y pruebas inactivas; Luego, esta información se envía en formato de correo electrónico a los suscriptores de cada prueba.
  • Estado del servicio web . Google Stackdriver se integra con Google App Engine para proporcionar un seguimiento sencillo del panel VTS. Las comprobaciones simples de tiempo de actividad verifican que se puede acceder a 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 el Panel esté siempre accesible (de lo contrario, se notificará a un administrador).
  • Analítica . Puede integrar una página de panel de VTS con Google Cloud Analytics especificando un ID de Analytics válido 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.