Image-Based Test Automation
Objekte auf einem Bildschirm können anhand eines Bildes gefunden und gesteuert werden. Dafür muss ein Control erstellt werden, indem ein Bild für die Identifikation aufgezeichnet wird. Bei der Steuerung des Controls wird nach diesem Bild gesucht und eine beliebige Aktion durchgeführt.
![]() |
Im Dualscreen-Modus werden Bilder bei der Testausführung immer zuerst auf dem primären Monitor gesucht. |
Image-Based Test Automation Controls werden wie die Standard-Controls der Tosca TBox gesteuert. Nähere Informationen zur Steuerung und den verfügbaren Aktionen finden Sie hier: Kapitel "Controls steuern".
Control erstellen
-
Wählen Sie über das Kontextmenü eines Modulordners die Option Neu erstellen Bildbasiertes Control. Es wird ein Fenster für die Erstellung eines Bildes geöffnet.
Fenster für die Erstellung eines Bildes
-
Holen Sie die gewünschte Applikation (d. h. Browser für XBrowser-Controls) in den Vordergrund.
-
Klicken Sie im Fenster für die Erstellung eines Bildes auf den leeren Bildausschnitt mit dem Pluszeichen. Das Fenster wird minimiert und der Mauszeiger in Form eines Fadenkreuzes angezeigt.
-
Definieren Sie mit dem Mauszeiger den Bereich der als Screenshot aufgezeichnet werden soll. Der Bereich wird bei diesem Vorgang durch ein rotes Rechteck gekennzeichnet.
Bei der Steuerung des Controls wird nach diesem Bild gesucht.
-
Wählen Sie den Control-Typ über die jeweilige Schaltfläche aus - beispielsweise Button.
Diese Option steht nur bei der Erstellung eines neuen Controls zur Verfügung.
Control-Typ auswählen
-
Drücken Sie die Eingabe-Taste, um das Bild zu erstellen.
Screenshot erstellen
-
Im oberen Bereich des Fensters wird das Bild des Controls angezeigt. Im unteren Bereich das Bild für die Identifikation des Bereichs. Bei dieser Vorgehensweise sind die Bilder identisch, da das Bild des Controls für die Identifikation verwendet wird.
-
Vergeben Sie im Feld Name einen eindeutigen Namen für das Control.
In Tosca können auch mehrere Bilder für ein Control hinterlegt werden – beispielsweise wenn sich das Aussehen einer Umschaltfläche kontextbezogen ändert. Für die Identifikation muss eines der Bilder gefunden werden.
Bilder eines Toggle Button aufzeichnen
-
Klicken Sie auf die Schaltfläche Speichern, um das Control zu erstellen. Oder klicken Sie auf Speichern & Neu, um das Control zu speichern und ein weiteres Control zu erstellen.
Bei der Erstellung eines bildbasierten Controls über einen Modulordner erstellt Tosca ein neues Modul mit einem Control. Bei der Erstellung eines bildbasierten Controls ausgehend von einem Modul wird diesem ein Control hinzugefügt.
Control anhand eines Bildes identifizieren
Beim Erstellen eines Controls verwendet Tosca ein Bild zur Identifikation eines Controls. Dabei wird der Abstand zwischen Control und Bild festgehalten (offset).
Dieser Vorgang kann auch durchgeführt werden, wenn sich Bild und Control überschneiden.
-
Wählen Sie über das Kontextmenü eines Modulordners oder Moduls die Option Neu erstellen Bildbasiertes Control.
-
Holen Sie die gewünschte Applikation (d. h. Browser für XBrowser-Controls) in den Vordergrund.
-
Klicken Sie im Fenster für die Erstellung eines Bildes auf den leeren Bildausschnitt mit dem Pluszeichen. Das Fenster wird minimiert und der Mauszeiger in Form eines Fadenkreuzes angezeigt.
-
Definieren Sie mit dem Mauszeiger den Bereich in dem sich das zu steuernde Control befindet.
-
Definieren Sie den Bereich der als Screenshot zur Identifikation des Controls aufgezeichnet werden soll.
Die beiden Bereiche werden bei diesem Vorgang durch zwei rote Rechtecke und einen Pfeil vom Bild zum Control gekennzeichnet. Der Screenshot wird mit dem Loslassen der Maustaste erstellt.
Abstand zwischen Bild und Control definieren
-
Vergeben Sie im Feld Name einen eindeutigen Namen für das Control.
Der Abstand zwischen Bild des Controls und Bild für die Identifikation, wird im Bereich Search Properties als Eigenschaft Offset angezeigt.
Bild für ein bestehendes Control erstellen
Diese Option steht für Controls, die anhand eines Bildes identifiziert werden und für HTML Controls zur Verfügung.
-
Wählen Sie über das Kontextmenü des gewünschten Controls die Option Identifiziere mittels Bild. Es wird ein Dialog für die Erstellung eines Bildes geöffnet.
-
Für ein bestehendes Control ist bereits ein Bild für die Identifikation vordefiniert. Sie können dieses Bild bei Bedarf über die Schaltfläche x löschen.
-
Die weiteren Schritte entsprechen der Vorgehensweise beim Erstellen eines Controls ab Punkt 3.
![]() |
Die Option Ansicht->Allgemein->Bei Ausführung/Scan minimieren im Hauptmenü des Tosca Commander™ erleichtert die Erstellung eines Bildes. |
Eigenschaften und Konfigurationsmöglichkeiten
Option |
Beschreibung |
---|---|
ScreenResolution |
Bildschirmauflösung bei der Erstellung des Bildes. Der Wert kann nicht geändert werden. |
Accuracy |
Hier kann definiert werden, zu welchem Grad in Prozent ein gefundenes Bild mit dem hinterlegten Bild übereinstimmen muss. |
ActionPoint |
Zeigt die exakte Position, an der Operationen bei der Steuerung erfolgen - beispielsweise ein Klick in die Mitte einer Schaltfläche. Der Wert kann nicht geändert werden. |
ControlArea |
Definiert den Bereich des zu steuernden Controls am Bildschirm (siehe Kapitel "Control anhand eines Bildes identifizieren"). Der Wert kann nicht geändert werden. |
Mode |
Diese Option ist editierbar, wenn es sich um ein Bild für die Identifikation eines bereits bestehenden HTML Controls handelt (siehe Kapitel "Bild für ein bestehendes Control erstellen"). Es kann der Suchmodus für die Identifikation eines Controls definiert werden. Folgende Werte stehen zur Verfügung:
|
Zeigt den Abstand des Controls zum hinterlegten Screenshot an (siehe Kapitel "Control anhand eines Bildes identifizieren"). Der Wert kann nicht geändert werden. |
Darstellung der Bilder zur Identifikation eines Controls im Tosca Commander™
Ein bildbasiertes Control besitzt in der Detailansicht des Tosca Commander einen zusätzlichen Reiter mit dem Namen Identifizierungsbilder.
Es werden das Bild des Controls und alle Bilder für die Identifikation des Controls angezeigt.
Reiter Identifizierungsbilder in der Detailansicht
-
Klicken Sie auf die Schaltfläche Bilder bearbeiten um die Bilder zu bearbeiten. Es wird das Fenster für die Erstellung eines Bildes geöffnet (siehe "Bilder zur Identifikation eines Controls aufzeichnen").
-
Doppelklicken Sie auf ein Bild, um es in einem eigenen Fenster darzustellen.
Text verifizieren
Der Text eines bildbasierten Controls kann über die OCR Zeichenerkennung oder die UIA Schnittstelle verifiziert werden. Für eine Text-Verifikation verwendet Tosca standardmäßig die UIA-Schnittstelle.
Text eines Bildes über OCR verifizieren (Tesseract)
Der Text des bildbasierten Controls, wird verifiziert. Für die Verifikation wird das Zeichenerkennungsprogramm Tesseract verwendet.
Das Bild wird vor einer Verifikation anhand der Tesseract-Standardwerte im Dialog Einstellungen bearbeitet (siehe Kapitel "Einstellungen - OCR").
Wird der Text nicht sofort erkannt, werden diese Einstellungen während der Testausführung wie folgt der Reihe nach automatisch editiert (SmartOCR).
-
Die Einstellung UseMonochrom wird deaktiviert.
-
Die Einstellung ScaleFactor wird um einen Schritt erhöht.
-
Die Einstellung UseMonochrom wird aktiviert und der Grauwert auf 0.2 gesetzt (MonochromBrightnessFactor).
-
Der Wert der Einstellung MonochromBrightnessFactor wird auf 0.05 gesetzt.
-
Die Einstellung UseInversion wird aktiviert.
Die Tesseract Einstellungen können für einzelne oder mehrere Objekte auch über Testkonfigurationsparameter oder Steering Parameter definiert werden. Die globalen Einstellungen im Dialog Einstellungen werden dabei überschrieben.
Die Bezeichnung der Testkonfigurationsparameter entspricht den Namen der Einstellungen ohne Leerzeichen und mit dem Präfix Tesseract - beispielsweise TesseractScaleFactor.
Aktion Verify
Wert: Eigenschaft ORCText und die Zeichenkette, die überprüft werden soll
![]() |
Es wird verifiziert, ob der Wert Google-Suche im zu steuernden Bild des Controls vorkommt.
Wird der Text nicht gefunden, werden die Ergebnisse der einzelnen vorgenommenen Schritte in der Spalte Details angezeigt (SmartOCR).
Testergebnis in der Spalte Detail |
Text eines Controls über die UIA Schnittstelle verifizieren
Der Text eines Controls wird verifiziert. Dabei entspricht der Text des Controls nicht immer dem Text des Bildes, das für die Identifikation aufgezeichnet wurde. Die Verifikation erfolgt über die Eigenschaft UIAText. Die Aktion ist Verify. Es wird der in der Spalte Wert definierte Wert überprüft.
![]() |
Es wird verifiziert, ob der Wert Home im zu steuernden Control vorkommt.
|