Zuverlässigkeit von Testscripts erhöhen

Mitunter können die in einem Test aufgezeichneten Schritte bei der Testwiedergabe nicht erkannt werden, was dann zu Testfehlern führt. Zur Vermeidung dieser Objekterkennungsfehler können Sie die Art und Weise, wie Objekte identifiziert werden, ändern, Bedingungen für die Objektposition verwenden oder Bedingungen des Typs "Reaktionsfähiges Design" anwenden. Auf diese Weise können Sie die Testzuverlässigkeit erhöhen und dadurch die Chancen dafür verbessern, dass der Test in einen automatisierten Testprozess eingebunden werden kann.

Eine mögliche Ursache für das Fehlschlagen eines Testschritts ist die Aktualisierung einer Anwendungsversion. Sie zeichnen einen Test mit einer Version einer Anwendung auf. Wenn Sie einen Test für eine neue Version der Anwendung wiederverwenden, die beispielsweise neue Schaltflächen aufweist oder in der sich Objekte an anderen Positionen befinden, können diese Objekte bei der Testwiedergabe nicht gefunden werden. Eine weitere Ursache für das Fehlschlagen eines Schritts ist die Änderung von Daten seit dem Zeitpunkt der Testaufzeichnung (beispielsweise ein Datum).

Im Folgenden sind einige Verfahren aufgeführt, mit denen Sie die Zuverlässigkeit von Testscripts erhöhen können:

Objekteigenschaften

Objekteigenschaften werden während der Testaufzeichnung erfasst und im Nur-Lese-Modus in der Eigenschaftentabelle der Ansicht Mobile- und Webbenutzerschnittstellendaten angezeigt. Um ein Objekt während der Wiedergabe in der zu testenden Anwendung zu finden, vergleicht die Test Workbench die Eigenschaften des Objekts, die während der Aufzeichnung erfasst wurden, mit der Beschreibung der Eigenschaften, die im Bereich "Benutzeraktion – Details" des Testeditors angezeigt werden. Diese Eigenschaften variieren in Abhängigkeit davon, ob es sich um eine Android-, iOS- oder Webbenutzerschnittstellenanwendung handelt.

Wenn Sie einen Schritt in einem aufgezeichneten Test auswählen, zeigt der Testeditor die Objekteigenschaften an, für die eine Aktion ausgeführt wird. Die Objekteigenschaften werden im Feld Objekt angegeben durch gefolgt von einem Operatorfeld und einem Einfügefeld für den Eigenschaftswert aufgelistet.

Abbildung 1. Im Testeditor ausgewählter Schritt mit entsprechender Objekteigenschaft, Operator und Eigenschaftswert
Im Testeditor ausgewählter Schritt mit entsprechender Objekteigenschaft, Operator und Eigenschaftswert

Sie können diese Parameter (Eigenschaft, Operator, Eigenschaftswert) im Bereich Benutzeraktion – Details des Testeditors oder über das Kontextmenü in der Ansicht Mobile- und Webbenutzerschnittstellendaten ändern. Wenn Aktionen aus der Liste Testinhalte ausgewählt werden, wird die Ansicht Mobile- und Webbenutzerschnittstellendaten automatisch dahingehend synchronisiert, dass der Screenshot für den ausgewählten Schritt angezeigt wird. Eigenschaften können auf der Registerkarte "Screenshot", auf der Registerkarte "Elemente" oder in der Eigenschaftentabelle mithilfe des Kontextmenüs geändert werden.

Eigenschaften können in der Ansicht 'Mobile- und Webbenutzerschnittstellendaten' auf der Registerkarte 'Screenshot', auf der Registerkarte 'Elemente' oder in der Eigenschaftentabelle mithilfe des Kontextmenüs geändert werden.
Abbildung 2. Eigenschaften können in der Ansicht "Mobile- und Webbenutzerschnittstellendaten" auf der Registerkarte "Screenshot", auf der Registerkarte "Elemente" oder in der Eigenschaftentabelle mithilfe des Kontextmenüs geändert werden.
Details hierzu finden Sie unter Eigenschaft ändern, die zum Angeben eines Objekts in einem Testscript verwendet wird.

Objektposition in einem Test

Beim Ausführen eines Tests müssen die Grafikobjekte automatisch erkannt werden; in einigen Fällen kann es jedoch schwierig sein, das Element zu identifizieren, für das die Aktion ausgeführt wird. In diesem Fall müssen Sie das Testscript aktualisieren und genauere Informationen zum Auffinden des Objekts angeben, für das die Aktion ausgeführt werden soll.

Ein Beispiel: Sie zeichnen einen Test auf und ein Schritt lautet "Auf 'Text bearbeiten'-Feld klicken, wenn der Textinhalt '30. August 2013' ist". Bei einer automatischen Wiedergabe des Tests schlägt dieser fehl, wenn das Datum nicht mehr "30. August 2013" lautet. Sie müssen den Schritt ändern und genauere Informationen zum Auffinden des Objekts angeben, für das die Aktion ausgeführt werden soll. Auf diese Weise kann das Objekt bei der Ausführung des Tests gefunden und automatisch verwendet werden. Die Test Workbench stellt verschiedene Möglichkeiten bereit, um Objekte zu identifizieren und zu finden und die Zuverlässigkeit von Testscripts zu erhöhen.

In Test Workbench sind verschiedene Objektpositionsoperatoren für Android-, iOS- und Webanwendungen verfügbar, um Objekte in einer zu testenden Anwendung zu identifizieren. Diese werden in den Feldern Objektposition im Bereich Benutzeraktion – Details des Testeditors angezeigt. Es können zwei Objektpositionen in einem Testschritt zum Festlegen von Positionsbedingungen und Auffinden des Zielobjekts im Test verwendet werden. Details hierzu finden Sie unter Objektpositionsbedingungen in einem Testscript festlegen.

Abbildung 3. Objektpositionsfelder mit der Liste der Positionsoperatoren (im Beispiel für Android-Anwendungen)
Felder für Objektposition und Sekundärposition mit geöffneter Liste von Sekundärpositionsoperatoren (hier für Android-Anwendungen)

Ein Schulungsvideo mit einer Demo der verschiedenen Verfahren, um ein Objekt in einem Test zu identifizieren, finden Sie unter How to create robust test scripts for mobile and desktop web applications.

Bilderkennung in einem Test

Beim Aufzeichnen eines Tests wird das Objekt, für das eine Aktion ausgeführt wird, durch seine Haupteigenschaft identifiziert. Diese Eigenschaft ist üblicherweise eine Texteigenschaft. Mitunter ist die Identifikation von Texteigenschaften jedoch schwierig. Dies könnte der Fall sein, wenn es keine Eigenschaftsbeschreibung oder keine Bezeichnung gibt, um das Zielelement in einem Testschritt zu identifizieren. In diesen Situationen verwendet der Testgenerator eine Bildeigenschaft, um die Elemente in den Testschritten zu identifizieren.

Zur Beseitigung möglicher Bilderkennungsprobleme verwendet die Test Workbench Bildkorrelationen, um Objekte während der Wiedergabe zu erkennen und zu verwalten. Das Bild, für das die Aktion ausgeführt wird (das Referenzbild) wird während der Testaufzeichnung erfasst und während der Wiedergabe mit dem Bild der zu testenden Anwendung (potenzielles Bild) verglichen. Ein Erkennungsschwellenwert wird verwendet, um eine anpassbare Quote an Unterschieden zwischen dem Referenzbild und dem potenziellen Bild zu akzeptieren und zu bewerten, ob die Bilder übereinstimmen. Standardmäßig ist der Erkennungsschwellenwert auf 80 und der Fehlertoleranzwert auf 20 festgelegt.

Im Folgenden sind einige Beispiele für Testszenarios aufgeführt, in denen die Bildkorrelation verwendet wird:
  • Sie zeichnen einen Test auf einem Mobiltelefon auf und geben ihn auf einem Tablet wieder. Da Bildbreite und -höhe von Gerät zu Gerät variieren, schlägt die Testwiedergabe auf Geräten fehl, bei denen die Anzeige nicht das gleiche Seitenverhältnis aufweist.
  • Einige Zielobjekte in der Aufzeichnung haben sich verändert, wenn der Test wiedergegeben wird. Beispiel: Wenn eine virtuelle Tastatur in einer sicheren Anwendung verwendet wird, kann sich die Position der Zifferntasten von einer Serversitzung zur nächsten ändern.

In einigen Fällen enthält die zu testende Anwendung möglicherweise ein benutzerdefiniertes Objekt oder ein Objekt, das die Test Workbench nicht finden kann. In anderen Fällen ist das ausgewählte Bild ungeeignet und der Test schlägt fehlt. Sollte es bei der Wiedergabe Erkennungsprobleme geben, können Sie das Bild, das im Testschritt zum Erkennen des Zielobjekts verwendet wird, ändern oder den Schwellenwert und den Toleranzwert im bearbeiteten Test ändern.

Anmerkung: Bilder können in Prüfpunkten für Steuerelemente auf den Zielobjekten im Test verwendet werden. Sie können beispielsweise die Position einer Dropdown-Liste in einer Anzeige überprüfen. Details hierzu finden Sie unter Prüfpunkte über die Ansicht "Mobile- und Webbenutzerschnittstellendaten" erstellen.

Wenn der Schwellenwert auf 0 festgelegt wird, wird das potenzielle Bild ausgewählt, das dem Referenzbild am ähnlichsten ist, und zwar auch dann, wenn es nicht das gleiche Bild ist. Wenn Sie den Schwellenwert auf 100 festlegen, führt bereits der kleinste Unterschied zwischen den Bildern dazu, dass die Bilderkennung scheitert. So würde beispielsweise ein Bild, dessen Breite oder Höhe abweicht, da seine Größe bei der Wiedergabe auf einem Tablet geändert wurde, nicht ausgewählt, wenn der Schwellenwert zuvor auf 100 festgelegt wurde, und zwar auch dann nicht, wenn es sich um das gleiche Bild handelt. Sie können die Seitenverhältnistoleranz ändern, falls ein Test auf Geräten fehlschlägt, deren Anzeige nicht das gleiche Seitenverhältnis aufweist, oder wenn sich die bei der Wiedergabe in der Anwendung verfügbaren Bilder von den Bildern unterscheiden, die bei der Aufzeichnung des Tests verfügbar sind.

Die Test Workbench zeigt die Ansicht Bildübereinstimmungsvorschau an, wenn Sie den Erkennungsschwellenwert im Testeditor festlegen, um Ihnen bei der Bestimmung von Bildern zu helfen, die geeignet sind, das Zielobjekt bei der Wiedergabe des Tests zu identifizieren. Die am besten geeigneten potenziellen Bilder sind grün. Bilder, deren Bewertung über dem Schwellenwert liegt, sind gelb und gelten als weniger gut geeignet. Und Bilder, deren Bewertung unter dem Schwellenwert liegt, sind rot. Diese potenziellen Bilder stimmen nicht mit den Referenzbildern überein.

Die Details zur Bildkorrelation finden Sie im Testbericht, der angezeigt wird, wenn die Testausführung beendet ist.

Details hierzu finden Sie unter Schrittziel mithilfe eines Bilds als Haupteigenschaft ändern.

Bedingung des Typs "Reaktionsfähiges Design"

Einige Anwendungen verwenden ein reaktionsfähiges Design, d. h. das Anwendungsverhalten oder die Grafikanzeige passt sich an das verwendete Zielgerät an. So gibt es beispielsweise immer mehr Anwendungen, die so konzipiert sind, dass sich das Format ihrer Grafikelemente gemäß der Größe oder Ausrichtung der Anzeige oder gemäß der Version des verwendeten Betriebssystems oder vergleichbarer Parameter ändert.

Für andere Anwendungen ist es erforderlich, dass die Benutzer sich anmelden und ihren Standort angeben. Wieder andere spielen Lernprogramme zur Verwendung der Anwendung ab, wenn die Anwendung erstmalig installiert und ausgeführt wird. Danach werden diese Lernprogramme nicht mehr angezeigt. Diese Situationen können dazu führen, dass ein Test fehlschlägt.

Um diese Probleme, die zu Testfehlern führen, zu beseitigen, können Sie Ausführungsbedingungen auf eine Auswahl variabler Aktionen festlegen. Auf diese Weise wird ein Block von Aktionen ausgeführt, wenn der Test erstmalig ausgeführt wird; bei der nächsten Ausführung der Aktionen im Test wird dieser Block von Aktionen jedoch nicht mehr ausgeführt. Dies ist ein Beispiel für eine Bedingung des Typs "Reaktionsfähiges Design". Details hierzu finden Sie unter Bedingungen des Typs "Reaktionsfähiges Design" in einem Test erstellen. Dieses Feature ist nur für Android-Anwendungen in Version 8.7.1 der Test Workbench verfügbar.


Feedback