Einfache Überprüfungen von im Browser dargestellten Inhalten von Webseiten, Portalen und webbasierten Applikationen kann man mit dem Vergleich von Screenshots (sowohl Inhalte, als auch Geometrie) vornehmen.
Das sollte aber niemals der normale Weg sein, da diese Tests statisch sind. Diese Arten von Tests sind nur dann berechtigt, wenn das Layout als solches überprüft werden soll (z. B. um die Einhaltung der Vorgaben eines CDs sicher zu stellen).
Bei Änderungen des Layouts der Webseite (im Vergleich zum Status der Inhaltsseite zum Zeitpunkt der Aufnahme des Tests) schlagen diese Tests sofort fehl. Auch wenn das Layout nicht verändert wurde und sich beispielsweise nur ein Wert in einer Zelle einer Tabelle geändert hat. Um das zu umgehen müsste man sehr aufwändig alle Vorbedingungen abbilden und vor dem Test entsprechend sicherstellen.
Verkompliziert werden die Tests aber durch eine Reihe verschiedenster Browserunterschiede. So gibt es beispielsweise bekannte Probleme des IE6 bei der Darstellung von transparenten PNGs; IE7/IE8 kann unter Windows XP die Inhalte optional mit ClearType rendern und unter Windows Vista kann man ClearType sowohl lokal im Browser als auch global für das Betriebssystem konfigurieren. Aber auch bei identischen Randbedingungen auf verschiedenen Windowsversionen werden Inhalte z. T. verschieden gerendert (sogar die Geometrie ist leicht abweichend!). Testet man jetzt noch weiter in die Breite und verwendet Firefox oder Seamonkey kommen zu den betriebssystembedingten noch weitere Unterschiede beim Rendering zwischen den Browserherstellern hinzu. Verstärkt werden die Unterschiede zwischen IE und SeaMonkey/Firefox, wenn invalides HTML (welches aus Sicht des Anwenders egal ist, solange die Inhalte ohne Fehlermeldung dargestellt werden können) gerendert werden muss.
Diesen Alptraum umgeht web2test, da es für Tests die entsprechenden Komponenten zur Laufzeit über verschiedene (bei Bedarf auch leicht anpassbare) Heuristiken auffindet. Änderungen am Layout sind somit grundsätzlich kein Grund zum Fehlschlagen eines Tests. Image Checks und Geometrie Checks dagegen sind fest an das Layout gebunden. An dieser Stelle können und sollen die Heuristiken nicht weiter helfen. Die Lösung liegt dann in der Verwendung der verschiedenen Knoten der Ablaufsteuerung (z. B. If, Else, etc.), in Kombinationen der Verwendung einer Variable browser zur Unterscheidung IE/Mozilla (empfehlenswert zu instanziieren im Umfeld des “Browser Start” Knotens), der Prozedur isIE6() und einem kleinen Server Skript getCurrentOS() (siehe unten).
from java.lang import System
os = System.getProperty(”os.name”);
rc.setGlobal(”CurrentOS”, os)
Damit ist man in der Lage alle Kombinationen von Möglichkeiten in einem Test-Skript universell abzubilden.
Nachfolgend schematisch ein mögliche Abbildung der Ablaufsteuerung:










