Reinventing Quality

ERROR: Content Element with uid "4364" and type "dce_dceuid16" has no rendering definition!

Die korrekte Darstellung der Elemente einer Webanwendung stellt eine wichtige Anforderung bei deren Realisierung dar. Dabei müssen sowohl funktionale (z.B. ist der Button nicht sichtbar und kann nicht gedrückt werden) als auch nicht-funktionale Aspekte (z.B. Usability-Probleme bei verrutschten Buttons und Menüs) berücksichtigt werden. Layout-Fehler können besonders gravierende Auswirkungen auf die Verwendbarkeit der Software haben. Aus diesem Grund stellt die Überprüfung der Korrektheit des Layouts einen wichtigen und oft vernachlässigten Bestandteil des Testens einer Webanwendung dar.
Abhängig von der Beschreibung des gewünschten Layouts müssen unterschiedliche Testansätze gewählt werden:

- Manuelles Testen: Das Layout wird manuell, d.h. durch Inspektion der Webseiten überprüft. Dieser Test wird angewandt, wenn lediglich eine informelle Anforderung z.B. in Form eines Fachkonzepts oder Wireframes vorliegt. Der Vorteil des Ansatzes ist die Validierung des Layouts durch den Tester. Nachteile sind der hohe Aufwand und die fehlende Automatisierbar- und Wiederholbarkeit.

- Spezifikationsbasiertes Testen: Liegt eine formale Spezifikation des Layouts vor, kann diese zum Testen verwendet werden. Beispiele für formale Spezifikationen können Vorgaben von Entwicklern in MS Excel oder Layout-Spezifikationen in Domain-spezifischen Sprachen sein (z.B. Galen). Der Vorteil ist die gute Automatisierbarkeit und die Validierung des Layouts durch die Erstellung der Spezifikation. Nachteile sind eine eventuelle Lücke zwischem intendiertem Layout und der Spezifikation und der hohe Erstellungs- und Pflegeaufwand.

Falls keine Spezifikation vorhanden ist, bieten sich folgende Möglichkeiten an:

- Suche nach bekannten Fehlerquellen: Verschiedene Fehlersituationen können automatisch erkannt werden. Dazu zählen Seitenelemente, die nie sichtbar werden und die Verwendung nicht allgemein unterstützter CSS-Eigenschaften. Diese Prüfungen können mit geringem Aufwand durchgeführt werden, liefern aber häufig Fehlalarme.

- Identifikation von Abweichungen zu einer Referenz-Instanz der Anwendung. Dies kann eine stabile Version aus der Vergangenheit sein, wobei Abweichungen dort entweder Fehler oder bewusst herbeigeführte Änderungen sind. Alternativ kann als Referenz das Layout in einem spezifischen Browser gewählt werden und nach Cross-Browser Abweichungen gesucht werden.

In diesem Vortrag untersuchen wir das Problem des Layout-Testens in der Praxis und zeigen an zwei Werkzeugen, welche unterschiedlichen Lösungsansätze es gibt:

- Galen ist ein Werkzeug zur Prüfung eines Layouts gegen eine Layout-Spezifikation
- webmate ist ein Werkzeug zur Prüfung nicht-funktionaler Anforderungen einer Webseite (insbesondere Layout-Eigenschaften)

Wir zeigen den Einsatz beider Werkzeuge an einem Beispiel und geben Tips zum Einsatz in der Praxis.

Michael Mirold, Testfabrik AG

Michael Mirold ist Gründer und Vorstand der Testfabrik AG, die sich mit innovativen Produkten
auf das automatisierte Testen nicht-funktionaler Eigenschaften von Web-Anwendungen spezialisiert hat.
Vor seiner Zeit bei Testfabrik leitete er mehrere Jahre als CTO ein Unternehmen im Bereich IT-Security.
Von 2007 bis 2012 war er als freier Mitarbeiter beim ZDF beschäftigt, wo er unter anderem die Entwicklung der Stream-Verwaltung der ZDF-Mediathek verantwortete und als technischer Architekt des ZDF den Relaunch der Medienportale zdf.de, heute.de und zdfsport.de begleitete. Michael Mirold
hat in Saarbrücken Informatik mit den Schwerpunkten Netzwerkanalyse und Software-Engineering studiert und hat das Studium als Master of Science abgeschlossen.