5.12
Komponenten untersuchen
In bestimmten Fällen ist es hilfreich, zusätzliche Informationen über Komponenten zu erhalten, neben den in der Sektion Fenster und Komponenten abgespeicherten, oder die dort abgespeicherten Informationen direkt im Zusammenspiel mit der Applikation zu betrachten.
Besonders wichtig ist dies während des "Einlernens von Komponenten" bei Web-Anwendungen. Dieser Vorgang sollte vor der Erstellung von Tests erfolgen. Er ist in Verbesserte Komponentenerkennung mittels CustomWebResolver beschrieben. Hierzu steht der UI-Inspektor zur Verfügung.
Bei der Arbeit mit Skripten ist es manchmal hilfreich, wenn man sich eine Liste der Methoden eines GUI-Elements anzeigen lassen kann.
5.12.1 Methoden anzeigen
Jedes GUI-Objekt besitzt bestimmte (öffentliche) Methoden und Felder die man im einem SUT-Skript verwenden kann, sobald man Zugriff auf ein Objekt hat (siehe "Zugriff auf die GUI-Komponenten des SUT"). Um sie anzuzeigen wählt man entweder den Eintrag »Methoden für Komponente anzeigen...« aus dem Kontextmenü eines Knotens unterhalb des Fenster und Komponenten Zweigs oder klickt im Komponentenaufnahme-Modus mit der rechten Maustaste auf die Komponente (siehe auch "Komponenten aufnehmen").
7.0+5.12.2 UI-Inspektor
Der UI-Inspektor zeigt die Hierarchie der Komponenten im Client und deren Eigenschaften an. Neben der Nachverfolgung von Problemen bei der Komponentenaufnahme oder der Wiedererkennung erleichtert er durch die in der Detailansicht dargestellten Informationen auch die Erstellung von Resolvern.
Im April 2024 fand ein Spezialwebinar zum Thema statt. Hier geht es zum Videomitschnitt des
Spezialwebinars auf unserem QF-Test
YouTube-Kanal.
Der UI-Inspektor steht für Android und Web zur Verfügung. Ab QF-Test Version 7.1 wird zusätzlich noch Windows und Swing/AWT unterstützt, und ab Version 7.1.3 wird ebenfalls FX unterstützt.
Die Darstellung der Knoten im Komponentenbaum bietet bereits einen Überblick über die wichtigsten Informationen. Wird die Klasse in blauer Schrift dargestellt, so wird diese Komponente als interessant betrachtet. Dies wiederum legt fest, ob für diese Komponente ein Komponente Knoten angelegt wird. Kann eine generische Klasse (siehe Generische Klassen) bestimmt werden, so wird zuerst die generische Klasse zusätzlich fett visualisiert und dann die ursprüngliche Klasse dahinter in Klammern gesetzt. Standardmäßig werden alle generischen Klassen als interessant betrachtet. Ist eine Komponente unsichtbar, so wird diese in einem Grauton dargestellt.
UI-Inspektor öffnen
Um den UI-Inspektor zu öffnen, haben Sie folgende Möglichkeiten:
- Über den Menüeintrag »Clients«-»Inspektor anzeigen«.
- Über den Menüeintrag »Im Inspektor anzeigen« aus dem Kontextmenü bei der Komponentenaufnahme.
- Über das Kontextmenü »Im Inspektor anzeigen« eines Komponente-Knotens oder eines Knotens, welcher eine QF-Test ID der Komponente oder eine SmartID enthält.
- Direkt vom SUT aus über (konfigurierbare) Tastaturkürzel. Standardmäßig Umschalt+Strg+F11 für Windows/Linux bzw. ⌃⇧+F11 für Mac. Siehe "UI-Inspektor".
- Android Im Aufnahmefenster mithilfe des Fadenkreuz-Buttons in der Toolbar, siehe QF-Test Android-Aufnahmefenster.
Toolbar
Die Buttons in der Toolbar haben folgende Bedeutung:
|
|
Komponente auswählen, um sie zu untersuchen. Während der Komponentenauswahl sind Aufnahme- und Check-Funktion deaktiviert, Aktionen werden nicht an das SUT weitergegeben. So können Komponenten im SUT per Mausklick mithilfe der im UI-Inspektor dargestellten Informationen untersucht werden. | |
|
|
Navigieren im Komponentenbaum. Zusammen mit dem Inspektor-Modus wird auch die Historienfunktion aktiviert. Diese speichert die Selektionen in UI-Inspektor und Client und man kann rückwärts und vorwärts in diesen navigieren. | |
|
|
Komponentenbaum aktualisieren. Ein Aktualisieren ist erforderlich, wenn sich Komponenten geändert haben oder Resolver installiert wurden. | |
|
|
Unsichtbare Komponenten im Komponentenbaum anzeigen. Komponenten mit sichtbaren Kindern werden immer angezeigt. | |
|
|
Geometrie-Informationen im Komponentenbaum anzeigen. |
UI-Inspektor-Detailansicht
Die Detailansicht gibt einen Überblick über die wichtigsten Eigenschaften einer Komponente. Die Ansicht ist in drei Teilbereiche untergliedert:
- Allgemein
-
Dieser Bereich umfasst die grundlegenden Eigenschaften einer
Komponente, etwa ihre Klasse.
Abbildung 5.14: Allgemeine Informationen - Engine-spezifisch
-
Die Engine-spezifischen Details umfassen eher technische Informationen zu einer Komponente. Die zur Verfügung stehenden Information unterscheiden sich je nach verwendeter Technologie.
AndroidIn Android sind es Informationen über die Android-Komponente und beinhalten die inhaltliche Beschreibung, Ressourcen-ID, Paketname sowie Informationen über den Fenster-Typ und dessen Anordnung.
Abbildung 5.15: Android-spezifische Informationen - QF-Test spezifisch
-
Diese Informationen sind an den bekannten Komponente-Knoten Knoten angelehnt. Sie eignen sich gut, um zu überprüfen, ob ein erstellter Resolver wie gewünscht funktioniert.
Abbildung 5.16: QF-Test spezifische Informationen
Die Detailansicht kann zusätzlich die Informationen zu zwei verschiedenen Komponenten nebeneinander darstellen, so dass man diese leicht vergleichen kann. Dazu klickt man mit der rechten Maustaste auf einen anderen Knoten im Komponentenbaum und wählt »Vergleichen« aus dem Kontextmenü. Über »Vergleichsknoten zurücksetzen« aus dem Kontextmenü oder mithilfe des Schließen-Buttons der Detailansicht wird man die Vergleichsansicht wieder los.