qtp frameworks test automation frameworks keyword driven
=> Klicken Sie hier für die QTP Training Tutorials Series
Fragen und Antworten zum Java-Programmierinterview für Erstsemester
Was ist Test Automation Framework und was ist QTP Framework?
Im Rahmen einer erfolgreichen Umsetzung von QTP Bei einem Software-Testprojekt stoßen wir häufig auf das Konzept von Frameworks. Das Framework ist nichts anderes als der Ansatz, den wir während des Automatisierungsprozesses konsequent verfolgen - eine Reihe von Richtlinien.
Persönlich möchte ich keine Namen nennen und sagen, dass einer besser funktioniert als der andere. Die Auswahl eines bestimmten Frameworks ist nicht der Beginn eines Projekts. Es ist das Gegenteil, das wahr ist. Bei der Entwicklung einer Teststrategie erstellen Sie die Regeln, die für die aktuelle Situation des Testers gelten, und genau dort befindet sich Ihr Framework.
Dennoch sind einige der wichtigsten Punkte, die wir berücksichtigen müssen:
- Wiederverwendbarkeit
- Einfache Wartung des Skripts
- Lesbarkeit von Skripten
- Gute funktionsfähige Ordnerstruktur für alle Test-Assets
- Keine harten Codierungswerte
- Keine Kaskade von Fehlern. (d. h. wenn ein Test fehlschlägt, sollte er nicht zum Versagen oder Stoppen der anderen führen)
Dies ist die Basisliste, und je nach Anforderung können weitere hinzugefügt werden.
Jede Teststrategie, die versucht, einige oder alle dieser oben genannten Punkte zu berücksichtigen, ist Ihr Test Automation Framework.
Es gibt verschiedene Namen und Arten von Frameworks. Das Folgende ist die Liste der Frameworks meiner Meinung nach:
Was du lernen wirst:
- Arten von Automatisierungs-Frameworks: (Gilt für QTP-Framework)
- Lineares Framework
- Keyword-gesteuertes Framework
- Literatur-Empfehlungen
Arten von Automatisierungs-Frameworks: (Gilt für QTP-Framework)
- Linear - Einfachste Form der Erstellung eines Tests. Schreiben Sie einfach ein einzelnes Programm ohne Modularität in aufeinander folgenden Schritten
- Schlüsselwortgesteuert - Erstellen Sie verschiedene Schlüsselwörter für verschiedene Operationen, und im Hauptskript können wir nur auf diese Schlüsselwörter verweisen.
- Datengesteuert - Ausführen derselben Operation für mehrere Datensätze, die in separaten Dateien gespeichert sind, meistens Excel-Tabellen.
- Hybrid - Ein Kombinationsframework, das teilweise datengesteuert und teilweise schlüsselwortgesteuert sein kann
- BPT - Dies bedeutet lediglich, dass Programme in Geschäftskomponenten unterteilt sind und mit dem einen oder anderen der oben genannten Framework-Typen verwendet werden
Lineares Framework
Wie bereits erwähnt, besteht dieser Ansatz darin, einfach den Code zu schreiben, während wir aufzeichnen und weitermachen.
Zum Beispiel, Wenn der Vorgang, den Sie überprüfen müssen, die Erstellung eines neuen Kontos in Google Mail ist, werden die folgenden Schritte ausgeführt:
- Öffnen Sie gmail.com
- Klicken Sie auf 'Konto erstellen'.
- Geben Sie die Details ein
- Überprüfen Sie die Details
- Erstellen Sie das Konto
'Open GMail SystemUtil.Run 'iexplore.exe', 'http://www.gmail.com' 'Page Sync Browser('Gmail').Page('Gmail').Sync ‘Click on create account Browser('Gmail').Page('Gmail').WebLink(“Create Account”).Click ‘Enter the details Browser('Gmail').Page('Google Accounts').WebEdit(“First Name”).Set “Swati” Browser('Gmail').Page('Google Accounts').WebEdit(“Last Name”).Set “test” ‘Fill in several other details ‘Submit Browser('Gmail').Page('Google Accounts').WebButton(“Next Step”).click
Das Obige ist ein Beispiel dafür, wie ein Programm aussieht, das die lineare Methode verwendet. An dieser Stelle ist es offensichtlich, welche Vor- und Nachteile dieses Verfahren hat.
Vorteile::
- Einfachheit. Für den Anfängerprogrammierer ist diese Methode geeignet
- Zeit - Das Erstellen des Tests dauert nicht lange
- Es ist nur sehr wenig Planung erforderlich
Nachteile::
- Überhaupt keine Wiederverwendbarkeit
- Wenn es ein anderes Skript gibt, das einen bestimmten Aspekt der Seite 'Google-Konten' überprüft, müssen Sie den Code neu schreiben, um auch die Seite 'gmail.com' zu starten. Also viel Wiederholung.
- Alle Daten werden direkt in Code eingebettet. Durch die Hardcodierung kann der Code nicht für andere Datensätze verwendet werden.
- Fehleranfällig und Wartung ist schwierig
Während die Nachteile die Vorteile überwiegen, kann diese Methode verwendet werden, wenn Ihr Ziel streng ist, eine Aufgabe ohne Validierungen zu erfüllen.
Die Komponenten von Test-Assets in dieser Art von Frameworks sind:
- Testskript
- Objekt-Repository (Dies kann bei Bedarf durch beschreibende Programmierung vermieden werden.)
Keyword-gesteuertes Framework
Wie können wir den obigen linearen Gerüsttest verbessern? Wie können wir die Nachteile überwinden?
Wofür werden APK-Dateien verwendet?
Natürlich brauchen wir Wiederverwendbarkeit, Modularität und Lesbarkeit. Der Versuch, diese Funktionen zu integrieren und eine optimale Lösung zu finden, ist nichts anderes als der Versuch, ein neues, verbessertes Framework zu erstellen.
Was sind die wiederverwendbaren Komponenten?
- Starten von Google Mail und Aufrufen der Seite 'Google-Konten'. Dies ist eine Selbstverständlichkeit, da die Validierung dieser Seite bedeutet, zuerst hierher zu gelangen. 'GoTo Google-Konto' - kann in eine separate Funktion umgewandelt werden, die immer wieder aufgerufen werden kann.
- Geben Sie die Details ein und validieren Sie sie. Sie können diese weiter in positive und negative Blöcke aufteilen, um ein höheres Maß an Modularität zu erreichen
- Kontoerstellung - Die endgültige Validierungs- und Erfüllungsstufe für die jeweilige Aufgabe
Sobald Sie hier angekommen sind, haben Sie nicht nur Komponenten identifiziert, die immer wieder aufgerufen werden können, sondern Sie haben auch Ihr lineares Programm in Module unterteilt.
Funktionen:
Bisher haben wir uns in unserer Serie nicht mit Funktionen befasst. Funktionen sind nichts anderes als ein Code, der bestimmte Operationen ausführt. Es akzeptiert Eingabeparameter von dem Programm, das es aufruft, und gibt einen Wert zurück.
In der Regel werden alle wiederverwendbaren Codeteile in einer Datei zusammengefasst, die alle wiederverwendbaren Funktionen enthält. Diese Datei ist einer Ressource für Ihren QTP-Test zugeordnet. In der Regel kann eine Funktionsbibliothek eine Datei vom Typ .vbs, .txt oder .qfl sein
Zurück zu unserem Beispiel- So kann die Funktionsbibliotheksdatei sein:
Function gotoGoogleAccount() 'Open Gmail SystemUtil.Run 'iexplore.exe', 'http://www.gmail.com' 'Page Sync Browser('Gmail').Page('Gmail').Sync ‘Click on create account Browser('Gmail').Page('Gmail').WebLink(“Create Account”).Click ‘Enter the details End Function Function EnterDetails() Browser('Gmail').Page('Google Accounts').WebEdit(“First Name”).Set “Swati” Browser('Gmail').Page('Google Accounts').WebEdit(“Last Name”).Set “test” ‘Fill in several other details End Function Function SubmitToCreate() ‘Submit Browser('Gmail').Page('Google Accounts').WebButton(“Next Step”).click End Function
Jetzt lautet Ihr aktuelles Skript:
'Open GMail gotoGoogleAccount() ‘Enter the details EnterDetails() ‘Submit SubmitToCreate()
Aus dem obigen Programm geht nun hervor, dass wir Lesbarkeit und Modularität erreicht haben. Wenn ein anderes Programm die Anmeldefunktion verwenden möchte, können wir sie mit Sicherheit wiederverwenden. Alles, was Sie tun müssen, ist, die Funktionsbibliothek auch diesem neuen Test zuzuordnen, und schon kann es losgehen.
c ++ Interviewfragen für erfahrene
Sie können auch sehen, dass in Ihrem Skript die Funktionsnamen so funktionieren, als ob sie es wären VBScript Schlüsselwörter und damit der Name für dieses Framework.
Die Komponenten von Test-Assets in dieser Art von Frameworks sind:
- Testskripte
- Geteiltes ODER
- Gemeinsame Funktionsbibliothek
Was würde dieses Programm sonst noch besser machen? Wenn wir die EnterDetails () -Funktion dazu bringen könnten, unterschiedliche Datensätze zu verwenden und unterschiedliche Konten zu erstellen, und nicht auf die Daten beschränkt zu sein, die wir fest in das Programm codiert haben. Das ist genau der nächste Schritt. Daten, die Ihre Tests steuern, und der Ansatz, mit dem wir dies tun, ist das datengesteuerte Framework.
Wir werden diskutieren Datengesteuerte und hybride Frameworks im Detail im kommenden Tutorial.
=> Besuchen Sie hier die QTP Training Tutorials Series
Wenn Sie Probleme mit dem QTP-Framework haben, die in diesen Artikeln nicht behandelt werden, teilen Sie uns dies bitte mit. Wir werden auf jeden Fall versuchen, Ihre Fragen zu beantworten.
Literatur-Empfehlungen
- Die beliebtesten Testautomatisierungs-Frameworks mit Vor- und Nachteilen - Selenium Tutorial # 20
- Testautomatisierung - Ist es eine spezialisierte Karriere? Können normale Tester auch automatisieren?
- Warum brauchen wir ein Framework für die Testautomatisierung?
- QTP-Tutorial Nr. 18 - Datengesteuerte und hybride Frameworks mit QTP-Beispielen
- Wie unterscheidet sich die Testplanung für manuelle und Automatisierungsprojekte?
- Funktionsweise datengesteuerter Tests (Beispiele für QTP und Selen)
- So wählen Sie das beste Automatisierungstest-Tool aus (eine vollständige Anleitung)
- Datengesteuertes Framework in Selenium WebDriver mit Apache POI