VTS Dashboard-Benutzeroberfläche

Das VTS-Dashboard bietet eine zusammenhängende Benutzeroberfläche, die mithilfe des Materialdesigns Informationen zu Testergebnissen, Profilen und Abdeckung effektiv anzeigt. Das Dashboard-Design verwendet Open-Source-Javascript-Bibliotheken, einschließlich Materialise CSS und jQueryUI, um Daten zu verarbeiten, die von Java-Servlets in Google App Engine bereitgestellt werden.

Dashboard nach Hause

Auf der Dashboard-Startseite wird eine Liste der Testsuiten angezeigt, die ein Benutzer zu seinen Favoriten hinzugefügt hat.

Abbildung 1. VTS-Dashboard, Startseite.

Aus dieser Liste können Benutzer:

  • Wählen Sie eine Testsuite aus, um die Ergebnisse für diese Suite anzuzeigen.
  • Klicken Sie auf ALLE ANZEIGEN , um alle VTS- Testnamen anzuzeigen.
  • Wählen Sie das Symbol Bearbeiten , um die Favoritenliste zu ändern.
    Abbildung 2. VTS-Dashboard, Seite Favoriten bearbeiten.

Testergebnisse

Testergebnisse zeigt die neuesten Informationen zur ausgewählten Testsuite an, einschließlich einer Liste von Profilierungspunkten, einer Tabelle mit Testergebnissen in chronologischer Reihenfolge und einem Kreisdiagramm mit der Ergebnisaufschlüsselung des letzten Laufs (Benutzer können ältere Daten laden, indem sie nach rechts blättern ).

Abbildung 3. VTS-Dashboard, Testergebnisse.

Benutzer können Daten mithilfe von Abfragen oder durch Ändern des Testtyps (vor dem Senden, nach dem Senden oder beides) filtern. Suchanfragen unterstützen allgemeine Token und feldspezifische Qualifikationsmerkmale. Unterstützte Suchfelder sind: Geräte-Build-ID, Zweig, Zielname, Gerätename und Test-Build-ID. Diese werden im folgenden Format angegeben: FIELD-ID = " SEARCH QUERY ". Anführungszeichen werden verwendet, um mehrere Wörter als ein einzelnes Token zu behandeln, das mit den Daten in den Spalten übereinstimmt.

Datenprofilerstellung

Benutzer können einen Profilierungspunkt auswählen, um eine interaktive Ansicht der quantitativen Daten für diesen Punkt in einem Liniendiagramm oder Histogramm zu erhalten (Beispiele unten). Standardmäßig werden in der Ansicht die neuesten Informationen angezeigt. Benutzer können die Datumsauswahl verwenden, um bestimmte Zeitfenster zu laden.

Abbildung 4. VTS-Dashboard, Leistung des Liniendiagramms.

Liniendiagramme zeigen Daten aus einer Sammlung ungeordneter Leistungswerte an. Dies kann nützlich sein, wenn ein Leistungstest einen Vektor von Leistungswerten erzeugt, die in Abhängigkeit von einer anderen Variablen variieren (z. B. Durchsatz gegenüber Nachrichtengröße).

Abbildung 5. VTS-Dashboard, Histogrammleistung.

Testabdeckung

Benutzer können Informationen zur Abdeckung über den Link zur prozentualen Abdeckung in den Testergebnissen anzeigen.

Abbildung 6. VTS-Dashboard, prozentuale Abdeckung.

Für jeden Testfall und jede Quelldatei können Benutzer ein erweiterbares Element anzeigen, das farbcodierten Quellcode enthält, entsprechend der Abdeckung, die der ausgewählte Test bietet:

Abbildung 7. VTS-Dashboard, Coverage-Quellcode.
  • Nicht abgedeckte Linien werden rot hervorgehoben .
  • Abgedeckte Linien werden grün hervorgehoben .
  • Nicht ausführbare Zeilen sind ungefärbt .

Die Abdeckungsinformationen werden abhängig von der Bereitstellung zur Laufzeit in Abschnitte unterteilt. Tests können Abdeckung hochladen:

  • Pro Funktion . Abschnittsüberschriften haben das Format "Abdeckung: FUNCTION-NAME ".
  • Insgesamt (am Ende des Testlaufs angegeben). Es ist nur ein Header vorhanden: "Coverage: All".

Das Dashboard ruft den Quellcode clientseitig von einem Server ab, der die Open-Source- Gerrit-REST-API verwendet .

Überwachen und Testen

Das VTS-Dashboard bietet die folgenden Monitore und Komponententests.

  • Testen Sie E-Mail-Benachrichtigungen . Warnungen werden in einem Cron-Job konfiguriert, der in einem festen Intervall von zwei (2) Minuten ausgeführt wird. Der Job liest die VTS-Statustabelle, um festzustellen, ob neue Daten in jede Tabelle hochgeladen wurden. Überprüfen Sie dazu, ob der Zeitstempel für das Hochladen der Rohdaten des Tests neuer als der Zeitstempel für die letzte Statusaktualisierung ist. Wenn der Upload-Zeitstempel neuer ist, fragt der Job zwischen jetzt und dem letzten Rohdaten-Upload nach neuen Daten. Neue Testfallfehler, fortgesetzte Testfallfehler, vorübergehende Testfallfehler, Testfallkorrekturen und inaktive Tests werden ermittelt. Diese Informationen werden dann im E-Mail-Format an die Abonnenten jedes Tests gesendet.
  • Webdienstzustand . Google Stackdriver lässt sich in Google App Engine integrieren, um eine einfache Überwachung des VTS-Dashboards zu ermöglichen. Durch einfache Überprüfungen der Verfügbarkeit wird überprüft, ob auf Seiten zugegriffen werden kann, während andere Tests erstellt werden können, um die Latenz auf jeder Seite, jedem Servlet oder jeder Datenbank zu überprüfen. Diese Überprüfungen stellen sicher, dass auf das Dashboard immer zugegriffen werden kann (andernfalls wird ein Administrator benachrichtigt).
  • Analytik . Sie können eine VTS-Dashboard-Seite in Google Cloud Analytics integrieren, indem Sie in der Seitenkonfiguration (die Datei pom.xml) eine gültige Analytics-ID angeben. Die Integration bietet eine zuverlässigere Analyse der Seitennutzung, Benutzerinteraktion, Lokalität, Sitzungsstatistik usw.