QTP Tutorial #18 – Data Driven and Hybrid Frameworks Explained with QTP Examples

Wir arbeiten uns durch herauszufinden, wie ein Automatisierungs-Framework abzuleiten, die am besten für ein bestimmtes Testprojekt funktioniert und auch bestimmte Rahmenbedingungen zu definieren, die bereits existieren.

Das Beispiel, das wir im vorherigen QTP Framework-Artikel verwendet haben, war das Erstellen eines neuen Google Mail-Kontos.

Zunächst haben wir das Szenario zum Erstellen eines neuen Kontos nur durch lineare Aufnahme und Wiedergabe codiert. Als wir sahen, wie sehr es an Modularität, Lesbarkeit und Wiederverwendbarkeit mangelte, haben wir es in Funktionen unterteilt, auf die in Zukunft als Schlüsselwörter verwiesen wird.

=> Klicken Sie hier für die QTP Training Tutorials Serie

 Datengesteuerte und hybride FrameworksDatengesteuerte und hybride Frameworks

Mit dieser Methode haben wir Modularität, Lesbarkeit und Wiederverwendbarkeit erreicht, aber wir mussten das Programm noch robuster machen, damit es verschiedene Werte annehmen kann, ohne das Skript selbst ändern zu müssen.

Genau das werden wir durch Daten erreichen, die die Tests steuern.

Datengesteuertes Automatisierungsframework mit QTP

Das Erstellen mehrerer Google-Benutzerkonten ist eine Aufgabe, die wir mit diesem Framework zu erfüllen versuchen werden.

Im früheren Beispiel haben wir den Vornamen, den Nachnamen, die Benutzer-ID-Details usw. fest codiert. in unseren Code beim Versuch, ein Konto zu erstellen. Wir müssen den Code von den Daten trennen, wenn wir den datentreibenden Aspekt für dieses Skript erreichen müssen.

Die Daten sollten aus einer Quelle stammen, die nicht das Programm selbst ist.

Typischerweise kann die Dateneingabe alles sein:

  • MS Excel-Dateien
  • Datenbank
  • Textdateien
  • XML-Dateien ….etc.

Excel-Dateien werden am häufigsten verwendet. Die Tatsache, dass jede Aktion in QTP mit einem eigenen Datenblatt integriert ist, erklärt, warum das so ist.

Sie können eine oder mehrere Datenquellen für ein einzelnes Skript verwenden. Die Excel-Tabelle, die mit der Aktion geliefert wird, kann verwendet werden, oder Sie können auch eine externe Excel-Tabelle verwenden. Grundsätzlich kann ein Datenblatt jede relevante externe Datei sein.

Zum Beispiel,

Hier ist der Code, den wir zum Datenlaufwerk benötigen:

Browser("Gmail: Email from Google").Page("GoogleAccounts").WebEdit("FirstName").Set "swati"Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("LastName").Set "s"Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("GmailAddress").Set "test"

Alle Daten sind jetzt fest codiert. Lassen Sie uns nun sehen, wie wir diese Werte aus dem Datenblatt entnehmen können.

Gehen Sie zur Expertenansicht für die Anweisung in QTP und klicken Sie für einen Schritt auf die Spalte Wert.

Es öffnet sich folgendes Fenster:

Data Driven Framework

Wählen Sie die Option Parameter, wählen Sie einen Namen für den Parameter (dies ist der Spaltenname im Datenblatt) und wählen Sie, ob Sie das globale Blatt oder das lokale Blatt verwenden möchten (das globale Blatt ist für alle Aktionen in einem Test verfügbar, das lokale Blatt ist jedoch spezifisch für die aktuelle Aktion).

Für das Feld „Name“ auf dem Bildschirm stellt QTP einen Standardwert bereit. Der Benutzer hat die Möglichkeit, es gleich zu halten oder zu ändern.

Data driven framework

Wenn Sie auf OK klicken, wird eine neue Spalte in der Datentabelle erstellt.

Datengesteuertes Framework

So sieht das Datenblatt aus, das 3 Sätze des Vornamens, des Nachnamens und der Konto-ID enthält:

 Datengesteuertes Framework

Nach der Parametrierung sieht der Code wie folgt aus:

Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("FirstName").Set DataTable("G_First_Name", dtGlobalSheet)Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("LastName").Set DataTable("G_Last_Name", dtGlobalSheet)Browser("Gmail: Email from Google").Page("Google Accounts").WebEdit("GmailAddress").Set DataTable("gmail_address", dtGlobalSheet)

Wenn wir diese 3 Benutzer-IDs mit den Daten im Blatt erstellen müssen, benötigen wir 3 Iterationen. Iteration ist nichts anderes als ein Testlauf.

Sobald die Daten eingerichtet sind, müssen wir QTP anweisen, wie oft dieser Code ausgeführt werden muss oder wie viele Iterationen.

So machen wir das: Gehen Sie zu Datei -> Einstellungen und führen Sie

 Data Driven Framework

Legen Sie im obigen Bildschirm die Iterationseigenschaften wie erforderlich fest.

Alternativ können Sie QTP programmgesteuert über die Iterationen anweisen. Wie immer ermöglicht dies mehr Kontrolle sowie Programmierkenntnisse. Es liegt also wirklich am Komfort des Testers, eine dieser Methoden zu wählen.

Die Komponenten des datengesteuerten Frameworks sind:

  1. Testskript
  2. Datendateien
  3. Gemeinsam genutzte Funktionsbibliothek (falls vorhanden oder ein lineares Programm).
  4. Objekt-Repository (Auch diese Komponente existiert nicht, wenn beschreibende Programmierung zum Erstellen von Objekten verwendet wurde).

Die Testergebnisse zeigen für jeden Testlauf den Status „Bestanden“ oder „Fehlgeschlagen“ an.

Abgesehen von der standardmäßig enthaltenen Datentabelle können wir jede externe Excel-Datei als Eingabeblatt verwenden.

Hybrid Framework

Im obigen Beispiel haben Sie Schlüsselwörter (Namen der Funktionen, die der Benutzer erstellt hat) verwendet und den Test datengesteuert durchgeführt, um sicherzustellen, dass verschiedene Benutzer gleichzeitig erstellt werden. Dies ist nichts anderes als ein hybrides Framework.

Die Kombination von zwei oder mehr Frameworks, die wir bisher besprochen haben, ist ein hybrides Framework. Meiner Erfahrung nach funktioniert kein Framework für ein bestimmtes Projekt effektiv. Das hybride Framework wird am häufigsten verwendet.

Einige wichtige Punkte zu Frameworks:

  • Das Framework ist nur eine Lösung, die in einer bestimmten Situation am besten funktioniert, aber nicht als eine Reihe von Regeln ausgelegt werden sollte, die definitiv befolgt werden müssen. Es sollte mehr wie Richtlinien gesehen werden.
  • Es könnten viele andere Frameworks im Einsatz sein, wir haben nur die gängigen aufgelistet und erklärt.
  • Nomenklatur – Verschiedene Personen sprechen ihre Frameworks mit unterschiedlichen Namen an. Wenn sich die Namen also von Anwendung zu Anwendung geringfügig unterscheiden, ist dies normal.
  • Die meisten Frameworks können in Verbindung miteinander verwendet werden, wenn eines von ihnen keine umfassende Lösung für Ihre Testziele bieten kann.

Fazit

Zum besseren Verständnis haben wir die Konzepte des Frameworks hier wirklich vereinfacht.

Wenn Sie Framework-bezogene Probleme haben, die in diesen Artikeln nicht behandelt werden, lassen Sie es uns wissen. Wir werden auf jeden Fall versuchen, Ihre Fragen zu beantworten. Fühlen Sie sich frei, Ihre Fragen zu stellen.

=> Besuchen Sie hier für die QTP Training Tutorials Serie

Zuletzt aktualisiert: November 29, 2021

Leave a Reply

Deine E-Mail-Adresse wird nicht veröffentlicht.