FT-Lernprogramm, Übung 10: Reguläre Ausdrücke verwenden

Dies ist Übung 10 des Lernprogramms zu Functional Test. Möchten Sie das Lernprogramm von Anfang an durcharbeiten, müssen Sie mit Functional Test - Lernprogramm beginnen.  

Reguläre Ausdrücke verwenden

Die letzte Aktion, die Sie mit der Objektübersicht ausführen werden, ist die Umwandlung eines Eigenschaftenwerts in einen regulären Ausdruck. Im vorliegenden Fall sorgt der reguläre Ausdruck für mehr Flexibilität bei der Objekterkennung.

Sie haben gerade gesehen, wie das Script für "ClassicsB" ohne Unterbrechung durchgelaufen ist. Genau das war auch das Ziel, denn die Änderungen, die an der Anwendung in "ClassicsB" vorgenommen wurden, sind richtig. Das Script befindet sich jetzt also genau im gewünschten Status. Wenn Sie das Script jetzt auf "ClassicsA" anwenden, wird es auf Grund der zu einem früheren Zeitpunkt vorgenommenen Änderungen zu einem Fehler kommen. Möglicherweise möchten Sie ja auch mehr als eine Objektvariante als akzeptabel für das Script zulassen. So können Sie beispielsweise mit einem dynamischen Objekt oder mit mehreren Versionen Ihrer Anwendung mit nur leicht unterschiedlichen Versionen eines Objekts arbeiten und beide sind richtig. Sie können einen regulären Ausdruck verwenden, über den Sie mehrere Versionen eines Eigenschaftenwerts (wie beispielsweise Text) für dieses Szenario zulassen.

  1. Möchten Sie das Script auf "ClassicsA" anwenden, müssen Sie den Befehl "StartApp" am Anfang des Scripts editieren und den Buchstaben"B" in "A" ändern.

  2. Klicken Sie auf Functional Test-Script ausführen in der Funktionsleiste von Functional Test.

Während der Wiedergabe stoppt Functional Test kurz am Markierungsfeldobjekt, setzt die Wiedergabe danach aber bis zum Ende fort.

Dann wird vom Script eine Warnung ausgegeben. Beachten Sie in diesem Zusammenhang, dass sich die Warnung auf dasselbe Objekt, nämlich auf das Markierungsfeld zum Kennwort, bezieht.

  1. Schließen Sie das Protokoll.

  2. Öffnen Sie die Objektübersicht (wie in Übung 8) über das Objekt Markierungsfeld zum Kennwort, indem Sie im Script-Explorer doppelt auf dieses Markierungsfeld klicken.

  3. Öffnen Sie die Anwendung durch Klicken auf Anwendungen > Ausführen in der Objektübersicht.

  4. Wählen Sie über den Pfeil "ClassicsJavaA" aus. (Sie müssen unbedingt "A" angeben.)

  5. Klicken Sie auf OK.

  6. Wählen Sie eine beliebige CD aus und klicken Sie in "ClassicsCD" auf Place Order, um das Dialogfenster für die Memberanmeldung zu öffnen.

  7. Fügen Sie das neue Objekt (wie Sie es bereits in Übung 8 getan haben) in die Objektübersicht ein. Klicken Sie dazu auf Testobjekt > Objekt(e) einfügen. Verwenden Sie die Objektsuche, um in der Anwendung das Dialogfenster für die Memberanmeldung auszuwählen.

  8. Klicken Sie auf Weiter und dann auf Fertig stellen.

  9. Ziehen Sie im oberen Fensterbereich der Objektübersicht das alte Markierungsfeldobjekt zum neuen Markierungsfeldobjekt, um die beiden Objekte so zu unifizieren.

  10. Vergrößern Sie den Assistenten zum "Unifizieren von Testobjekten". Ziehen Sie dazu (bei Bedarf) eine der Seiten nach außen, um die Felder so zu verlängern.

Sie werden mit zwei verschiedenen regulären Ausdrücken arbeiten: ein Ausdruck bezieht sich auf die Eigenschaft name, der andere auf die Eigenschaft accessibleName.

Das unifizierte Objekt wird im Raster Unifizierte Testobjekteigenschaften (oberes Teilfenster) gezeigt. Die Eigenschaft name hat den Wert "checkRemember".

  1. Klicken Sie im oberen Teilfenster mit der rechten Maustaste auf den Wert "checkRemember". Klicken Sie anschließend auf Wert in regulären Ausdruck umwandeln.

Functional Test legt den Wert über das Symbol "xy" vor dem zum Wert gehörenden Text als regulären Ausdruck fest.

  1. Klicken Sie erneut doppelt auf den Wert für "name", so dass Sie das Feld anschließend editieren können.

  2. Löschen Sie das Wort "check" und editieren Sie den Rest wie folgt:

[rR]emember

  1. Klicken Sie auf eine Position außerhalb dieser Zelle.

Bei diesem Muster ist das Wort "remember" sowohl mit dem Buchstaben "R" in Großschreibung als auch mit dem Buchstaben "r" in Kleinschreibung zugelassen. Das ist deshalb von Bedeutung, weil Vergleiche unter Berücksichtigung der Groß-/Kleinschreibung ausgeführt werden und nur eine exakte Übereinstimmung akzeptiert wird.

Der Wert der Eigenschaft accessibleName lautet "Remember Password".

  1. Klicken Sie mit der rechten Maustaste auf den Wert "Remember Password" und wählen Sie Wert in regulären Ausdruck umwandeln aus, um die Umwandlung vorzunehmen.

  2. Klicken Sie anschließend doppelt auf den Wert und editieren Sie ihn wie folgt:

Remember.*Password

Sie entfernen also das Leerzeichen und fügen einen Punkt (.) und einen Stern (*) hinzu.

  1. Klicken Sie auf eine andere Zelle.

Durch den Punkt wird angegeben, dass an dieser Position ein beliebiges Zeichen auftreten kann. In der einen Version der Anwendung finden Sie zwischen den beiden Wörtern dieser Eigenschaft ein Leerzeichen, in der anderen Version dagegen nicht. In diesem Muster werden beide Fälle abgedeckt.

  1. Klicken Sie im Assistenten auf Weiter und anschließend auf Fertig stellen.

  2. Klicken Sie in der Objektübersicht auf Datei: Speichern, um die vorgenommenen Änderungen zu speichern und schließen Sie die Objektübersicht anschließend wieder.

  3. Schließen Sie "ClassicsCD".

Und nun zum Teil, der richtig Spaß macht!

  1. Führen Sie das Script erneut für "ClassicsA" aus. Klicken Sie bei Bedarf auf eine beliebige Position innerhalb des Functional Test-Fensters und aktivieren Sie die Functional Test-Funktionsleiste. Klicken Sie anschließend auf Functional Test-Script ausführen.

Die Warnung zur Objekterkennung in "ClassicsA" wird im Protokoll nicht mehr angezeigt.

  1. Schließen Sie das Protokoll.

  2. Ändern Sie den Befehl "StartApp" für die Wiedergabe von "ClassicsB" und führen Sie das Script aus.

Die Objekterkennung funktioniert auch für "ClassicsB" fehlerfrei! Reguläre Ausdrücke bieten mehr Flexibilität in Bezug auf die Erkennung eines Objekts mit verschiedenen Eigenschaften in verschiedenen Versionen einer Anwendung. Die Erkennung während der Wiedergabe funktioniert problemlos.

Weitere Informationen zur Objektübersicht finden Sie im Abschnitt zum Thema Testobjektübersicht.

Weitere Informationen zu regulären Ausdrücken finden Sie im Abschnitt zum Thema Eigenschaft mit exakter Übereinstimmung durch Muster ersetzen.

Zusammenfassung zum Lernprogramm

Im vorliegenden Lernprogramm zu Functional Test haben Sie erfahren, wie Sie Functional Test für die Ausführung von Tests konfigurieren müssen, wie Scripts aufgezeichnet und wiedergegeben werden, wie Prüfpunkte erstellt und wie der Prüfpunktkomparator zum Aktualisieren von Objekteigenschaften oder Daten eingesetzt wird. Außerdem haben Sie verschiedene Möglichkeiten kennengelernt, wie Sie die Objektübersicht zu Ihrem Vorteil nutzen können. Es gibt natürlich noch etliche andere Features und Anwendungsfälle zu Functional Test, beispielsweise die ClearCase-Integration sowie die plattformübergreifende Wiedergabe. Weitere Informationen zur Verwendung von Functional Test finden Sie im Inhaltsverzeichnis des Benutzerhandbuchs zu Functional Test.

Und nun viel Spaß!

Nutzungsbedingungen | Feedback

(C) Copyright IBM Corporation 2002, 2004. Alle Rechte vorbehalten.