qtp tutorial 7 qtp s object identification paradigm how qtp identify objects uniquely
Wie identifiziert QTP das Objekt eindeutig? - Dies ist das 7. QTP-Tutorial in unserer QTP-Schulungsreihe.
Wir werden mit allen Grundkonzepten ausgestattet, die es uns ermöglichen, zu schreiben robuste QTP-Tests . Wir haben das QTP behandelt Aufnahme- und Ausführungseinstellungen , Arbeiten mit der Keyword-Ansicht und die anderen verwandten Themen.
=> Klicken Sie hier für die QTP Training Tutorials Series
Dies ist der nächste Artikel in der Reihe, der über einen entscheidenden Aspekt von QTP spricht - Der Mechanismus, mit dem ein Objekt eindeutig identifiziert wird . Wenn Sie sich den folgenden Bildschirm ansehen:
In diesem Dialogfeld befinden sich 3 Schaltflächen und 2 Textfelder sowie verschiedene andere Elemente.
In den vorherigen Beispielen haben wir bei der Eingabe des Benutzernamens und des Kennworts gesehen, wie QTP dieselben Vorgänge in Bezug auf den Programmcode sowie eine Tabelle in der Schlüsselwortansicht aufgezeichnet hat. Woher weiß QTP während der Wiedergabe, dass der Wert, den wir als Agentenname oder Passwort angeben, in diesen Bearbeitungsfeldern angegeben werden muss. Oder woher weiß es, auf welche Schaltfläche geklickt werden muss, um die eingegebenen Werte zu senden?
Versuchen wir, eine Antwort darauf zu finden.
wie man BIOS Windows 10 flasht
Es ist klar, dass QTP sich irgendwie daran erinnert, auf welches Objekt es einwirken soll. So wie es ist, speichert es das Objekt im AUT als Testobjekt. Anschließend werden die Eigenschaften überprüft und das Objekt klassifiziert. Zum Beispiel, Wenn es auf die Schaltfläche OK stößt, überprüft es seine Eigenschaften und klassifiziert das Objekt basierend auf diesen als 'WinButton'.
QTP verfügt über einen vorgegebenen Satz von Eigenschaften, die es für jede identifizierte Objektklasse lernt / speichert. Dies hat drei Aspekte:
- Obligatorische Eigenschaften : Dies ist die Liste der Eigenschaften für eine bestimmte Klasse, die QTP immer speichert. Wir könnten sagen, dass dies die Objektbeschreibung ist. Dies wird auch in Verbindung mit dem übergeordneten Objekt überprüft, um festzustellen, ob die Beschreibung ausreicht, um das Objekt eindeutig zu identifizieren.
- Assistive Eigenschaften : Falls die Beschreibung der obligatorischen Eigenschaften nicht ausreicht, um das Objekt zu identifizieren, wird der Beschreibung nacheinander eine Reihe nicht obligatorischer Eigenschaften hinzugefügt, bis genügend Daten vorhanden sind, um das Objekt zu identifizieren.
- Ordnungszahl : Wenn die unterstützenden Eigenschaften auch nicht zu einer eindeutigen Identifizierung eines Objekts führen, wird durch QTP eine spezielle Ordnungskennung hinzugefügt, z. B. die Position des Objekts auf der Seite oder im Quellcode.
So bildet QTP Testobjekte. Mithilfe dieser Beschreibung des Testobjekts wird nach den Objekten gesucht, auf die während einer Laufsitzung reagiert werden soll. Es wählt die Objekte aus, die perfekt mit der darin enthaltenen Beschreibung übereinstimmen. Diese Objekte werden aufgerufen Laufzeitobjekte.
Sofern sich Ihre Anwendung nicht wesentlich geändert hat, reicht die Beschreibung des Testobjekts in QTP aus, um ein Objekt zu finden.
Lassen Sie uns für das WinButton-Objekt, das wir in unserer Flight-App haben, sehen, welche Eigenschaften QTP gespeichert hat. Diese Informationen sind im Objekt-Repository verfügbar. Die Menüoption „Ressourcen-> Objekt-Repository“ startet den OP für uns. Alternativ können Sie STRG + R verwenden oder auf das Symbol klicken.
Wenn Sie im obigen Fenster bemerken, wurde der 'Text' im WinButton als Beschreibung gespeichert, um diese Schaltfläche zur Laufzeit zu identifizieren.
Bei komplizierteren Anwendungen kann der Tester bestimmte Eigenschaften hinzufügen oder entfernen, um die Beschreibung robust genug zu machen, um das Objekt zur Laufzeit genauer zu identifizieren. Klicken Sie dazu einfach auf das Symbol '+'.
Alle anderen Eigenschaften des Objekts werden angezeigt. Der Benutzer kann eine oder mehrere dieser Eigenschaften hinzufügen.
Es gibt auch etwas namens „ Visuelle Beziehungskennung ”Im ODER-Bildschirm für die WinButton-Eigenschaften.
Dies ist eine Funktion, die die Objekterkennung gemäß ihren Nachbarobjekten im AUT weiter unterstützt. Nach dem Festlegen wird eine Art Verknüpfung für die weniger stabilen Komponenten in Ihrem AUT mit den Objekten erstellt, die eindeutiger identifizierbar sind. QTP identifiziert diese Objekte, solange sie ihre relative Position zu diesen eindeutigen Objekten beibehalten.
Um eine Art Positionslink zu setzen, müssen wir auf diese Spalte im OP klicken und der folgende Bildschirm wird angezeigt:
Wählen Sie in diesem Bildschirm das Pluszeichen aus, um ein Objekt hinzuzufügen, mit dem Ihr Testobjekt einen Positionslink haben soll.
Ich werde 'Agentenname' wählen und sagen, dass sich dieses Objekt über der Schaltfläche 'OK' befinden sollte.
So stelle ich das ein:
Falls sich einige Eigenschaften der Schaltfläche 'OK' in Zukunft ändern, wird sie von QTP identifiziert, wenn 'Agentenname' darüber steht.
Intelligente Identifizierung
der beste MP3-Musik-Downloader für Android
Dies ist der Mechanismus, den QTP in einer dieser beiden Situationen einsetzt. Die Beschreibung für ein Objekt, das QTP hat:
- Stimmt nicht mit Laufzeitobjekten überein
- Stimmt mit mehreren Objekten überein
Dies ist ein wenig fortgeschrittenes Konzept, daher werden wir zu einem späteren Zeitpunkt anhand einiger Beispiele zum einfachen und ausführlichen Verständnis darauf eingehen.
Ordnungszahl
Dies ist ein numerischer Wert, der die relative Reihenfolge des Objekts mit Objekten mit einer ähnlichen Beschreibung darstellt. Wenn ein Objekt 1 und ein Objekt 2 dieselben obligatorischen und unterstützenden Eigenschaften haben, wird die Ordnungskennung verwendet, um das Objekt eindeutig zu erkennen.
Dieser Wert bezieht sich auf die anderen Objekte des Bildschirms. Sollte sich also etwas am Bildschirm ändern, ist diese Kennung möglicherweise nicht hilfreich. Es ist zu beachten, dass, wenn die obligatorischen und unterstützenden Eigenschaften ausreichen, keine Ordnungskennung für die Aufzeichnung zugewiesen wird. Sie kann später durch Klicken auf die entsprechende Spalte für das Objekt im OP hinzugefügt werden
Es gibt 3 Arten von Ordnungskennungen:
- Index: Dies basiert auf der Reihenfolge des Auftretens eines Objekts im Anwendungscode
- Ort: basierend auf der Position in einem Bildschirm oder Dialog oder einer Seite
- Erstellungszeitpunkt: Dies wird nur für Browserobjekte verwendet. Wenn 2 Browser mit ähnlichen Eigenschaften vorhanden sind, wird der zuerst und als nächstes erstellte berücksichtigt.
Zum Beispiel, Lassen Sie uns verstehen, wie die Indexkennung in unserem Anmeldebildschirm für Fluganwendungen funktioniert:
Dies sind die folgenden Komponenten:
Wie Sie sehen können, haben der statische Text und die Bearbeitungsfelder dieselbe Eigenschaft 'Text'.
Wenn ich weiß, dass einer von ihnen ein statischer Text und der andere ein WinEdit-Objekt ist, gibt es überhaupt kein Problem. Wenn alle diese als WinObject behandelt werden, muss ich angeben, auf welches Objekt reagiert werden soll. Dies wird nur geschehen, wenn die obligatorische, unterstützende und intelligente Identifizierung fehlgeschlagen ist. Um QTP mitzuteilen, was was ist, werde ich eine Ordnungskennung für den Index zuweisen. Ich werde dies aus dem OP tun.
Ich werde den statischen Textbezeichner für den Agentennamen auf 0 und für das Bearbeitungsfeld auf 1 setzen.
So sieht es aus:
Wenn ich also auf den statischen Text zugreifen muss, gehe ich wie folgt vor:
WinObject ('Text: = Agentenname:', Index: = 0) - Dies bezieht sich auf den statischen Text
WinObject ('Text: = Agentenname:', Index: = 1) - Dies bezieht sich auf das Bearbeitungsfeld
Die gleiche Theorie gilt auch für die Standortkennung, mit der Ausnahme, dass wir die Position im Fenster auswählen, um den numerischen Wert zu bestimmen, der für ein bestimmtes Objekt gilt.
Konfigurieren der Objektidentifikationseigenschaften:
Die obligatorischen, unterstützenden Eigenschaften und Ordnungskennungen, die für ein zu erkennendes Objekt einer bestimmten Klasse berücksichtigt werden müssen, können mithilfe von „Extras-> Objektkennung“ konfiguriert werden. Über dieses Fenster können wir auch die Eigenschaften der intelligenten Identifizierung festlegen.
Das Fenster sieht wie folgt aus:
Wie in diesem Bild oben zu sehen ist, kann die Umgebung aus dem Dropdown-Feld ausgewählt werden. Sobald dies ausgewählt ist, werden die Objektklassen in den entsprechenden Umgebungen in der Liste angezeigt. Nachdem ein Objekt ausgewählt wurde, werden die obligatorischen und unterstützenden Eigenschaften angezeigt. Der Benutzer kann dieser Liste zusätzliche Eigenschaften hinzufügen / entfernen.
Bei Bedarf kann die intelligente Identifizierung auch für eine bestimmte Klasse von Objekten aktiviert / deaktiviert werden. Um die Ordnungszahl festzulegen, kann ein Dropdown-Menü ausgewählt werden, mit dem das Objekt anhand von Standort, Index oder Erstellungszeit identifiziert werden kann (nur für den Browsertyp).
Wir werden die grundlegenden Konzepte zusammenfassen, bevor wir zu vollwertigen QTP-Programmen übergehen. Der nächste QTP-Artikel enthält verschiedene Aufzeichnungsmodi, Objektspion, Objekt-Repository usw. Details.
=> Besuchen Sie hier die QTP Training Tutorials Series
Literatur-Empfehlungen
- Objekt-Repository in QTP - Tutorial Nr. 22
- QTP-Tutorial Nr. 18 - Datengesteuerte und hybride Frameworks mit QTP-Beispielen
- QTP-Tutorial Nr. 24 - Verwenden virtueller Objekte und Wiederherstellungsszenarien in QTP-Tests
- QTP-Tutorial Nr. 6 - Grundlegendes zu den QTP-Aufnahme- und Ausführungseinstellungen für unseren ersten Test
- QTP-Lernprogramm Nr. 23 - QTP-Smart-Objektidentifikation, Synchronisierungspunkt und Testergebnisanalyse
- QTP-Tutorial Nr. 8 - Erfahren Sie mehr über QTP-Aufzeichnungsmodi, Object Spy und Object Repositories
- Parametrisierung in QTP (Teil 2) - QTP-Tutorial Nr. 20
- QTP-Tutorials - 25+ QTP-Schulungs-Tutorials (Micro Focus Quick Test Professional)