qtp tutorial 23 qtp smart object identification
In diesem QTP-Tutorial lernen wir: Smart Object Identification, Hinzufügen eines Synchronisationspunkts, Ausführen eines Tests und Anzeigen der Ergebnisse sowie den Silent Test Runner.
=> Klicken Sie hier für die QTP Training Tutorials Series
Nehmen Sie eine Situation an, in der kein Objekt oder mehrere Objekte zur Laufzeit mit der aufgezeichneten Beschreibung eines Objekts übereinstimmen. Wie geht QTP damit um?
Was du lernen wirst:
- Intelligente Identifizierung
- Synchronisationspunkt
- Ausführen eines Tests
- Testergebnisse
- Transaktionen
- Silent Test Runner
- Literatur-Empfehlungen
Intelligente Identifizierung
QTP verfügt über einen Mechanismus für Fälle wie diesen. Wenn die aufgezeichnete Beschreibung es QTP nicht ermöglicht, das angegebene Objekt in einem Schritt zu identifizieren, und eine Smart-Identification-Definition für das Objekt definiert (und aktiviert) ist, versucht QTP, das Objekt mithilfe von „Smart-Identification“ zu identifizieren.
Lassen Sie uns anhand einiger Beispiele sehen, wie dies funktioniert. Für jedes Objekt gibt es primäre Eigenschaften und sekundäre Eigenschaften.
Beispiel 1: Objekt mit der aufgezeichneten Beschreibung wurde nicht gefunden.
Auf einer Seite gab es eine Schaltfläche und die folgenden Eigenschaften sind:
- Primär: Name
- Sekundär: Abs x, y
Während der Aufzeichnung war die Eigenschaft 'Name' 'Login ID'. Aufgrund einiger Änderungen an der Anwendung wird die Eigenschaft 'Name' jetzt in 'Benutzer-ID' geändert. In diesem Fall findet QTP eine Schaltfläche mit einer anderen Beschreibung und sollte fehlschlagen, wenn nur die primären Eigenschaften berücksichtigt werden.
In solchen Fällen, in denen die primären Eigenschaften nicht übereinstimmen, werden die sekundären Eigenschaften überprüft, und wenn sie übereinstimmen, wird das Objekt erkannt. In diesem Fall erkennt es die Schaltfläche an ihren X- und Y-Koordinaten.
Beispiel 2: QTP sollte eine Seite X finden und es gibt 2 Seiten mit ähnlichen Browsereinstellungen.
Auch in diesem Fall versucht es, den „Namen“ oder andere Eigenschaften zu verwenden, um die richtige Seite / die richtigen Seiten zu finden, und funktioniert entsprechend.
Die obigen 2 sind Beispiele für Fälle, in denen QTP den Smart Identification-Mechanismus aktiviert.
- Die Testergebnisse zeigen auch, ob in einem Schritt die intelligente Identifizierung verwendet wurde, um erfolgreich ausgeführt zu werden.
- Wenn QTP das Objekt trotz Smart Identification nicht finden kann, schlägt der Test fehl.
Für die meisten Objekte bietet QTP standardmäßige Basisfiltereigenschaften (primär) und optionale Filtereigenschaften (sekundär), mit denen überprüft wird, ob die intelligente Identifizierung für sie aktiviert ist. Der Benutzer hat die Möglichkeit, die zu berücksichtigenden Eigenschaften zu bearbeiten. Gehen Sie dazu zu '' Tools-> Objektidentifikation '' .
Wählen Sie die entsprechende Umgebung aus der Dropdown-Liste und wählen Sie die Objektklasse. Wenn Sie es ausgewählt haben, aktivieren Sie 'Smart Identification aktivieren' und klicken Sie auf 'Configure'.
Klicken Sie auf Hinzufügen oder Entfernen
Wählen Sie die gewünschten Eigenschaften aus:
Wie sieht ein Modem aus?
Treffen Sie Ihre Auswahl und klicken Sie auf OK, wenn Sie fertig sind.
Der obige Prozess stellt sicher, dass das nächste Mal, wenn es Schwierigkeiten hat, ein Objekt dieser Klasse zu identifizieren, eine intelligente Identifizierung verwendet wird, um dies zu tun.
Außerdem ist für die meisten Objekte die intelligente Identifizierung standardmäßig aktiviert. Sie können sehen, wo dies für ein bestimmtes Objekt der Fall ist, indem Sie im OP unter 'Zusätzliche Details' in den Objekteigenschaften darauf zugreifen.
Es ist auf 'True' gesetzt, wenn aktiviert, und auf 'False', wenn deaktiviert.
Sie können die Smart-Identifikation auch für einen Testlauf vollständig aktivieren oder deaktivieren. Wählen '' Datei-> Einstellungen-> Ausführen-> Intelligente Identifizierung während der Ausführungssitzung deaktivieren '' Möglichkeit.
Synchronisationspunkt
Betrachten Sie dieses Programm,
SystemUtil.Run 'iexplore.exe', 'http://www.gmail.com' Browser('Gmail: Email from Google').page('Gmail: Email from Google').Sync Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebEdit('Email').Set 'swatiseela' Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebEdit('Passwd').SetSecure 'sfgs686898' Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebButton('Sign in').Click Browser('Gmail: Email from Google').Page('Gmail - Inbox').Link('Sign out').Click
In einer idealen Welt sollte der 'Posteingang' ohne Verzögerung angezeigt werden, sobald Sie auf der Google Mail-Anmeldeseite auf die Schaltfläche 'Anmelden' klicken. Das heißt, der Status der Anwendung ist bereit, damit die letzte Anweisung in unserem Beispiel unmittelbar nach der Ausführung der vorletzten Anweisung ausgeführt wird.
In Echtzeit werden Anwendungen aus vielen Gründen nicht immer im gleichen Tempo geladen. Wenn wir QTP nicht anweisen, eine gewisse Zeit zu warten, bevor es weitergeht. Genauer gesagt, bis ein Objekt einen bestimmten Zustand erreicht.
Ein Synchronisationspunkt wird verwendet, um QTP anzuweisen, zu warten, bis eine bestimmte Objekteigenschaft den von Ihnen angegebenen Wert erreicht.
Beim Einfügen eines Synchronisierungspunkts wird eine Anweisung 'Wait Property' in den Test eingefügt.
Browser('Gmail: Email from Google').Page('Gmail - Inbox'). Link('Sign out').WaitProperty “Visibile”,true,20
Ihr neues Programm wird also ungefähr so aussehen: (Zeile 6 unten)
SystemUtil.Run 'iexplore.exe', 'http://www.gmail.com' Browser('Gmail: Email from Google').page('Gmail: Email from Google').Sync Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebEdit('Email').Set 'swatiseela' Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebEdit('Passwd').SetSecure 'sfgs686898' Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebButton('Sign in').Click Browser('Gmail: Email from Google').Page('Gmail - Inbox'). Link('Sign out').WaitProperty “Visible”,true,1000 Browser('Gmail: Email from Google').Page('Gmail - Inbox').Link('Sign out').Click
Es kann während der Aufnahme über die Menüoption eingefügt werden '' Einfügen-> Synchronisationspunkt '' . Wählen Sie das Objekt aus, um den Synchronisierungspunkt einzufügen.
Geben Sie den gewünschten Wert ein:
Dies ist die Anweisung, die eingefügt wird:
Browser('Gmail - Inbox').Page('Gmail - Inbox').Link('Sign out').WaitProperty 'visible', true, 10000
Ausführen eines Tests
# 1) Automatisierung-> Ausführen oder F5 führt normalerweise den gesamten Test aus.
#zwei) Sie können einen Teil des Tests ausführen, indem Sie auswählen 'Automatisierung-> Aktuelle Aktion ausführen' Möglichkeit
#3) Sie können einen Test ab einem bestimmten Punkt in Ihrem Test ausführen, indem Sie die Option auswählen '' Automatisierung-> Von Schritt ausführen '' Möglichkeit.
# 4) Sobald Sie eine der oben genannten Möglichkeiten zum Ausführen eines Tests ausgewählt haben, werden Sie aufgefordert, den Speicherort auszuwählen, an dem die Testergebnisse gespeichert werden sollen. Sie können den Ordner auswählen, indem Sie die erste Option auswählen. In diesem Fall werden die Ergebnisse für jede Instanz des Testlaufs gespeichert.
Wenn Sie jedoch die nächste Option, einen temporären Ordner, auswählen, werden die Ergebnisse überschrieben und nur das neueste Testergebnis wird in dem ausgewählten Ordner gespeichert. In Bezug auf den Speicher ist es ratsam, beim Testen Ihres QTP-Tests die zweite Option zu verwenden. Wählen Sie nicht die erste Option, es sei denn, Sie möchten alle Testergebnisse erzielen, da dies offensichtlich viel Platz beansprucht.
# 5) Eingabeparameter: Wenn die Testeingabeparameter für diesen Test definiert wurden, ist diese Registerkarte der Ort, an dem Sie sie bereitstellen.
# 6) Sie können auch mehrere Tests gleichzeitig in einem Stapel ausführen. QTP verfügt über ein Batch Runner-Tool. Es ist auch ein externes Tool, genau wie ein „Passwort-Encoder-Tool“, das wir zuvor besprochen haben.
# 7) Zum Starten gehen Sie zu “ Programme> QuickTest Professional> Tools> Test Batch Runner ”. Erstellen Sie einen Stapel (.mtb) mit
# 8) Führen Sie nach dem Erstellen einer Liste den Stapel mit aus Symbol. Nach Abschluss des Batch-Laufs können Sie die Ergebnisse für jeden Test in seinem Standardordner für Testergebnisse anzeigen ( res # report ).
Testergebnisse
In unseren bisherigen Artikeln, ob wir diskutieren Datentabelleniteration , Kontrollpunkte Die Testergebnisse sind der Ort, an dem Sie sehen können, ob etwas erfolgreich war oder nicht.
Abgesehen davon können die Testergebnisse den Screenshot Ihres AUT enthalten, wenn ein Fehler auftritt. Dies hängt von den Einstellungen unter ab '' Datei-> Einstellungen-> Ausführen ”.
Der Tester kann Testergebnisse drucken und exportieren.
Was ist die beste Handy-Spionage-App
Um die Testergebnisse verständlicher zu machen, kann der Benutzer seine Kommentare in die Testergebnisse schreiben.
Zum Beispiel, Wenn eine bestimmte Bedingung in Ihrem Test fehlschlägt, möchten Sie möglicherweise in die Testergebnisse schreiben, dass 'für den Wert X nicht funktioniert hat'. Sie können dies mit der Anweisung 'reporter.reportevent' tun. Das Folgende ist die Syntax:
Reporter.Reportevent (Ereignisstatus, Name des Reporterschritts, Details)
Ereignisstatus: MicPass, MicFail, MicWarning, MicDetail. Die nächsten beiden Parameter können beliebige Texte sein, die weitere Details enthalten.
Wenn dies meine Aussage ist und ich sie ausführe:
Reporter.ReportEvent micPass, 'Swatis erster Schritt', 'Bestanden, weil ich ihm gesagt habe, er soll bestehen ...'
Die Testergebnisse werden folgendermaßen aussehen: (Klicken, um das Bild zu vergrößern)
Transaktionen
Da dies keine sehr weit verbreitete Funktion ist, werde ich hier eine allgemeine Einführung geben.
In der Regel wird ein Test in Transaktionen unterteilt, wenn Sie messen müssen, wie lange es dauert, einen bestimmten Abschnitt davon auszuführen.
wie man dat-Dateien auf dem iPhone öffnet
Es wird auch verwendet, wenn ein QTP-Test von Load Runner oder Business Process Monitor verwendet werden soll. In beiden Fällen muss Ihr Test in Bezug auf eine Transaktion aufgezeichnet werden, und alles außerhalb davon wird ignoriert.
Sie können eine Transaktion über QTP mit starten '' Einfügen-> Transaktion starten '' . Geben Sie ihm einen Namen, wählen Sie, ob Sie ihn vor oder nach dem aktuellen Schritt möchten, und wählen Sie OK.
Services.StartTransaction 'TransactionTest' - Wird eingefügt. Jetzt werde ich ein Login bei Gmail.com aufzeichnen.
Sobald Sie mit der Aufnahme fertig sind. Wählen '' Einfügen-> Transaktion beenden '' . OK klicken.
Services.EndTransaction “TransactionTest” - wird eingefügt.
Dies ist der Code:
Jetzt werde ich diesen Test durchführen. Lassen Sie uns sehen, wie die Testergebnisse aussehen. Die Ergebnisse zeigen eine Zusammenfassung der Zeit, die zum Abschluss der Transaktion benötigt wird.
Silent Test Runner
Ein weiteres Tool, das QTP bereitstellt, ist der Silent Test Runner. Dadurch kann der Tester seinen Test ausführen, ohne QTP starten zu müssen. Es hilft auch dabei, QTP-Läufe vom Load Runner zu simulieren und die Kompatibilität mit diesem zu überprüfen.
Es funktioniert nicht, wenn QTP bereits geöffnet ist und ein weiterer Test darüber ausgeführt wird.
Benutzen Start > Programme > QuickTest Professional > Werkzeuge > Silent Test Runner Menübefehl zum Aufrufen. Wählen Sie den Test aus und klicken Sie auf 'Test ausführen'.
So sieht es beim Ausführen des Tests aus:
Sobald es fertig ist:
Testlaufprotokoll:
Die 'Transaktionszusammenfassung' wird aktiviert, wenn der Test mindestens eine Transaktion enthält.
Wir haben jetzt das Ende dieses Tutorials erreicht und hier einige verschiedene QTP-Themen behandelt. Ich hoffe, das ist nützlich für alle Leute.
Bitte zögern Sie nicht, Ihre Kommentare und Fragen zu posten.
=> Besuchen Sie hier die QTP Training Tutorials Series
Literatur-Empfehlungen
- Objekt-Repository in QTP - Tutorial Nr. 22
- QTP-Tutorial Nr. 7 - QTP-Paradigma zur Objektidentifizierung - Wie identifiziert QTP Objekte eindeutig?
- 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-Tutorial Nr. 18 - Datengesteuerte und hybride Frameworks mit QTP-Beispielen
- Parametrisierung in QTP anhand von Beispielen erläutert (Teil 1) - QTP-Tutorial Nr. 19
- QTP-Tutorials - 25+ QTP-Schulungs-Tutorials (Micro Focus Quick Test Professional)
- QTP-Tutorial Nr. 6 - Grundlegendes zu den QTP-Aufnahme- und Ausführungseinstellungen für unseren ersten Test