Pseudo DOM API für Web-Anwendungen

QF-Test bietet 'SUT-Skript' Knoten Zugriff auf einen Teil des DOM API einer Web-Anwendung. Dieses API entspricht nicht ganz dem auf JavaScript Ebene, auf welcher mittels der in diesem Kapitel beschriebenen Methoden toJS, callJS und evalJS mit der Web-Anwendung interagiert werden kann. Mit dem DOM API ist es möglich, das DOM zu traversieren und Attribute von DOM-Knoten auszulesen und zu setzen, aber nicht die Struktur des DOM zu verändern. Dieses API ist damit hilfreich für die Implementierung von Name- oder FeatureResolvern (vgl. Abschnitt 52.1).

Bei Swing, FX und SWT arbeitet QF-Test mit den konkreten Java-GUI-Klassen, während bei Web-Anwendungen folgende pseudo Klassenhierarchie verwendet wird:

Pseudo Klassenhierarchie für Elemente von Web-Anwendungen
Abbildung 52.1:  Pseudo Klassenhierarchie für Elemente von Web-Anwendungen

Wie zu sehen, ist "NODE" die Wurzel der pseudo Klassenhierarchie. Diese Klasse passt auf jedes Element des DOM. Von "NODE" abgeleitet sind "DOCUMENT", "FRAME", "DOM_NODE" und "DIALOG", die Knotentypen, die das pseudo DOM API implementieren, welches in Abschnitt 52.11 beschrieben ist. "DOM_NODE" wird an Hand des Tag-Namens des Knotens weiter spezialisiert, z.B: "H1", "A" oder "INPUT", wobei es für manche Tags zusätzliche Unterklassen wie "INPUT:TEXT" gibt.

HinweisDas DOM kann für verschiedene Browser unterschiedlich ausfallen. Daher sollten Sie versuchen, sich in Ihren Skripten und Resolvern nicht auf Kindindizes zu verlassen, falls Sie beabsichtigen mit mehreren Browsern zu testen.

Das DOM API von QF-Test besteht aus den folgenden fünf Klassen:

Die abstrakte Klasse Node

Die Klasse DocumentNode

Die Klasse FrameNode

Die Klasse DomNode

Die Klasse DialogNode