QTP Linear Framework – Vollständige Referenz mit Beispiel – XX – XX
Im vorherigen Artikel haben wir besprochen, worum es bei einem Testautomatisierungs-Framework geht, und einen kurzen Überblick über verschiedene QTP-Framework-Typen gegeben, die Sie beim Skripting verwenden können. Beginnend mit diesem Artikel werden wir jeden der QTP-Framework-Typen im Detail behandeln.
In diesem Artikel werden wir die folgenden Aspekte von QTP Linear Framework behandeln –
- a) Was ist das lineare Framework von QTP.
- b) Welche Komponenten bilden den linearen Rahmen.
- c) Schreiben von Skripten in QTPS linearem Framework.
- d) Vor- und Nachteile des linearen Rahmens.
UPDATES
1) Sie können den für dieses Framework verwendeten Code herunterladen und damit herumspielen. Der Download-Link ist am Ende des Artikels verfügbar.
2) Genau so haben wir weitere Artikel zu verschiedenen anderen QTP-Frameworks geschrieben. Wenn Sie sich diese ansehen möchten, besuchen Sie bitte die QTP Framework-Hauptseite. Der untere Teil der Seite enthält Links zu anderen QTP-Frameworks.
Lassen Sie uns jeden dieser Punkte einzeln besprechen.
Was ist der lineare QTP-Framework-Ansatz?
Lineares Framework ist nichts anderes, als alle Schritte in Ihrer Aktion nacheinander in linearer Form zu schreiben. Dieser Ansatz wird auch lineares Scripting genannt. Bei diesem Ansatz wird Ihr gesamter Testfallfluss linear in QTP geschrieben.
Betrachten Sie ein Beispiel, in dem Sie einen Testfall haben, um sich bei der Anwendung anzumelden, nach einigen Daten zu suchen und sich dann abzumelden. Im linearen Framework würde der Code wie unten gezeigt aussehen.
'Code to Open Application'Code to enter user name in Login Page'Code to enter password'Click on Login button and verify successful Login'Search for the required data'Logout from the application'Close the application
Wie Sie im obigen Beispiel sehen können, tun Sie mit dieser Art von QTP-Framework nicht viel in Bezug auf die Framework-Erstellung. Daher ist dies das am einfachsten zu verwendende und zu implementierende Framework. Die normale Aufzeichnung und Wiedergabe, die wir mit QTP machen, fällt unter diesen Rahmen.
Lassen Sie uns nun einige Vor- und Nachteile von QTP Linear Framework sehen. Dies würde Ihnen helfen, die Vor- und Nachteile dieses Frameworks zu analysieren und so die Situationen zu bestimmen, in denen dieses Framework verwendet werden kann.
QTP Linear Framework – Vor- und Nachteile
Vorteile
- a) Sehr wenig Automatisierungskenntnisse erforderlich. Für die Erstellung von Skripten sind nur die Werkzeugkenntnisse erforderlich.
- b) Dies ist der schnellste Weg, Skripte zu erstellen.
- c) Da das Framework nicht komplex ist, wird es sehr einfach, den Fluss zu verstehen.
Nachteile
- a) Da der Code linear ohne die Verwendung von Funktionen geschrieben wird, gibt es sehr wenig Spielraum für die Wiederverwendung.
- b) Die einzige Möglichkeit, den Code wiederzuverwenden, besteht darin, ihn bei Bedarf zu kopieren und einzufügen. Daher wird derselbe Code an mehreren Stellen geschrieben. Die Pflege dieses Codes ist sehr zeitaufwändig und fehleranfällig, da Sie an allen betroffenen Stellen Änderungen vornehmen müssen.
- c) In diesem Framework sind Testdaten im Skript fest codiert. Sie können also nicht denselben Code verwenden, um mehrere Datensätze zu testen. Entweder müssen Sie die Daten nach jedem Lauf ändern oder Sie müssen mehrere Kopien des Codes erstellen, um verschiedene Daten zu testen. Beide Methoden sind ineffizient.
Wo kann ich QTP Linear Framework verwenden?
Aus dem obigen Abschnitt können Sie deutlich erkennen, dass die Nachteile dieses Frameworks die Vorteile überwiegen. Wiederverwendbarkeit und Wartbarkeit sind einige der wichtigsten Faktoren, die bei der Erstellung eines Automatisierungsframeworks berücksichtigt werden. Aus diesem Grund würden Sie selten lineares Framework finden, das in realen Projekten verwendet wird.
Da Sie es nicht in komplexen realen Automatisierungsprojekten verwenden können, bedeutet dies, dass dieses Framework überhaupt keinen Nutzen hat? Gut.. nicht ganz. Sie können dieses Framework für die Aufgaben verwenden, bei denen Sie die Arbeit schnell erledigen möchten. Dies kann auch zur Unterstützung manueller Tests verwendet werden.
Betrachten Sie diese Situation. Angenommen, Sie testen eine Anwendung, in der Sie viele Bestellungen erstellen müssen. Das Erstellen dieser Aufgaben ist nun ein langwieriger und zeitaufwändiger Prozess. Was Sie hier tun können, ist nur den Auftragserstellungsfluss aufzuzeichnen und das Skript auszuführen, um Aufträge zu erstellen. Sie können das Skript ausführen, wenn Sie zum Mittagessen ausgehen und wenn Sie zurück sind, Sie hätten Ihre Bestellungen fertig :–)
Sie können es auch für viele andere wiederholbare Aufgaben verwenden, z. B. zum Überprüfen Ihrer Google Mail-Konten auf neue E-Mails beim Starten Ihres Computers, zum Auffüllen von Arbeitszeitnachweisen usw. Die Möglichkeiten sind endlos!!
Komponenten im QTP Linear Framework
Da dieses Framework ziemlich einfach und unkompliziert ist, sind normalerweise nicht viele Komponenten damit verbunden. In der folgenden Abbildung sind die typischen Komponenten aufgeführt, die mit diesem Framework verwendet werden.
1) Testskripte: Auch wenn Sie mit diesem Ansatz nicht viele Testfälle automatisieren würden, können Sie sie unabhängig von Ihren Szenarien in einem oder mehreren QTP-Tests verwenden.
2) Objekt-Repository: Wenn Sie die Aufzeichnungs- und Wiedergabemethode zum Erstellen von Testskripten verwenden, wird das Objekt-Repository automatisch für Sie generiert. Bei Bedarf können Sie einige Änderungen an den Objekteigenschaften im Repository vornehmen. Sie können beschreibende Programmierkonzepte verwenden und somit das Objekt-Repository ganz überspringen.
Sie können auch einige zusätzliche Komponenten wie ein Treiberskript verwenden, wenn Sie die Zeit planen möchten, zu der die Testfälle ausgeführt werden sollen.
Beispiel für QTP Linear Framework
Wir werden nun ein Skript in QTP Linear Framework erstellen, das Google Mail öffnet und die Anzahl der heute in Ihrem Posteingang empfangenen E-Mails abruft. Mit QTPS AOM erstellen wir auch ein Treiberskript, mit dem wir die Ausführungszeit dieses Testfalls planen können.
Code zum Überprüfen des Posteingangs auf heute empfangene E-Mails
Dim iTodayMailsiTodayMails = 0'Open GMailSystemUtil.Run "iexplore.exe", "http://www.gmail.com"'Page SyncBrowser("Gmail").Page("Gmail").Sync'Login to GmailBrowser("Gmail").Page("Gmail").WebEdit("UserName").Set "valid gmail login id"Browser("Gmail").Page("Gmail").WebEdit("Password").Set "valid gmail password"Browser("Gmail").Page("Gmail").WebButton("SignIn").Click'Page SyncBrowser("Inbox").Page("Inbox").Sync'Search for emails received today in your inbox'Logic - The mails received today will have only time in the last(8th) column.'Time is always followed by am or pm. So the code check for the last 2 characters and matches it with am or pm.For iR = 1 to 50sLastColumnText = Browser("Inbox").Page("Inbox").Frame("Frame").WebTable("Emails").GetCellData(iR,8)sLast2Characters = Right(sLastColumnText, 2)If sLast2Characters = "am" or sLast2Characters = "pm" TheniTodayMails = iTodayMails + 1Else'Exit ForEnd IfNext'Report the number of mails received todayReporter.ReportEvent micPass, "Total Emails Received Today - " & iTodayMails, ""'Sign out from GMailBrowser("Inbox").Page("Inbox").Frame("Frame").Link("SignOut").ClickBrowser("Gmail").Page("Gmail").Sync'Close the browserBrowser("Gmail").Close()
Mit QTP AOM
Dim testCasePath, resultPathtestCasePath = "D:\QTP\QTP Framework Samples\QTP Linear Framework Demo\GMail Inbox1"resultPath = "D:\QTP\QTP Framework Samples\QTP Linear Framework Demo\Result"'Open QTPSet qtpApp = CreateObject("QuickTest.Application")'If QTP is not open then open QTP applicationIf qtpApp.launched <> True ThenqtpApp.LaunchEnd If'Make the QuickTest application visibleqtpApp.Visible = True'Set QuickTest run optionsqtpApp.Options.Run.ImageCaptureForTestResults = "OnError"qtpApp.Options.Run.RunMode = "Fast"qtpApp.Options.Run.ViewResults = True'Open the test in read-only modeqtpApp.Open testCasePath, TrueWScript.Sleep 2000'set run settings for the testiSet qtpTest = qtpApp.Test'Instruct QuickTest to perform next step when error occursqtpTest.Settings.Run.OnError = "NextStep"'Create the Run Results Options objectSet qtpResult = CreateObject("QuickTest.RunResultsOptions")'Set the results locationqtpResult.ResultsLocation = resultPath'Run the testWScript.Sleep 3000qtpTest.Run qtpResult
erstelltes Treiberskript Sie können diesen Treiberskriptcode beim Windows-Start hinzufügen oder über den Windows-Taskplaner planen, wenn Sie die Ausführung des Testfalls zu einem bestimmten Zeitpunkt an einem Tag planen oder den Testfall bei jedem Systemstart ausführen möchten.
Leave a Reply