024.lv — automatisierte QA-Plattform für Web-Control-Panels
Derzeit in Entwicklung. 024.lv automatisiert die Prüfung von Server-Control-Panels, erkennt Oberflächen- und Netzwerkfehler, speichert Ergebnisse und erstellt übersichtliche HTML- und JSON-Berichte.
024.lv, auch Berg Panel Tester genannt, entstand aus einer wiederkehrenden Aufgabe: Nach relevanten Änderungen muss ein umfangreiches Server-Control-Panel erneut geprüft werden. Die manuelle Kontrolle von Dutzenden Ansichten kostet Zeit, lässt sich nur schwer konsistent wiederholen und übersieht leicht einen defekten Link, einen JavaScript-Fehler oder eine Seite, deren Ladevorgang nicht endet. Die Plattform macht daraus einen strukturierten QA-Ablauf.
Die Aufgabe
Das Testsystem sollte sich sicher anmelden, die zentralen Module des Panels durchlaufen und mehr als den HTTP-Status bewerten. Entscheidend war die tatsächliche Sicht des Operators in den Bereichen Webhosting, Datenbanken, E-Mail, DNS und Netzwerk, Dateiverwaltung, Systemwerkzeuge, SSH, Sicherheit und Administration. Die Ergebnisse mussten für das Team gut lesbar und zugleich für den nächsten Entwicklungsschritt strukturiert nutzbar sein.
Was umgesetzt wurde
- Playwright-Browserabläufe mit Anmeldung und automatischer Wiederherstellung der Sitzung.
- Analyse der Navigation, die neue, noch nicht im Testmanifest erfasste Bereiche erkennt.
- Zehn Prüfebenen für PHP- und Fehlerseiten, leere Inhalte, Navigation, Überschriften, Performance, festhängende Loader, JavaScript, Netzwerkanfragen und Bedienelemente.
- Nutzernahe Interaktionen mit Scrollen, Hover-Zuständen, Sucheingaben und Erkennung defekter Bilder.
- Semantische Prüfungen für Tabellen, Formulare, Statusanzeigen, Messwerte, Datumsangaben, Tabs, Seitennavigation und API-Antworten.
- MySQL-Speicherung von Sitzungen, Seitenergebnissen, Befunden sowie Konsolen- und Netzwerkfehlern.
- Filterbare HTML-Berichte mit Diagrammen und strukturiertes JSON mit Prioritäten und konkreten Hinweisen zur Behebung.
Architektur und Steuerung
Der Testkern ist in Python geschrieben und nutzt Playwright für die Browserautomatisierung. MySQL speichert den Verlauf, Jinja2 und Chart.js erzeugen die Berichte. Über ein passwortgeschütztes PHP-Dashboard lassen sich Testläufe starten, live verfolgen und frühere Ergebnisse öffnen. Ein Lauf kann nach Modulgruppe oder Priorität eingegrenzt, ohne grafische Oberfläche ausgeführt oder ausschließlich zur Erkennung neuer Bereiche genutzt werden.
Das Ergebnis
Das Team erhält eine gemeinsame Sicht auf Testabdeckung, Seitenstatus, Schweregrade und den konkreten Kontext jedes Befunds. Die Berichtshistorie zeigt Qualitätsveränderungen im Zeitverlauf und erleichtert es, Regressionen nach einem Deployment gezielt einzugrenzen.
Das Projekt wird aktiv weiterentwickelt: der zentrale Test- und Reporting-Ablauf ist bereits im Einsatz, während Szenarien und semantische Prüfungen mit dem Control-Panel wachsen.