Parametrierung in QTP/UFT mit Beispiel
⚡ Intelligente Zusammenfassung
Parametrierung in QTP/UFT Ersetzt fest codierte Werte durch variable Eingaben, sodass ein einzelnes Testskript für viele Datenkombinationen, Umgebungseinstellungen und aufrufende Aktionen ausgeführt werden kann, ohne dass ein einziger Schritt neu geschrieben werden muss.
Was ist QTP Parametrisierung?
QTP/UFT Parametrisierung Dadurch können Sie zur Laufzeit unterschiedliche Testeingaben auswählen, anstatt einen einzelnen Wert fest in ein Skript einzuprogrammieren. Dieser Prozess, einen Test mit externen Parameterwerten anstelle eines festen Wertes zu versorgen, wird als Parametrisierung bezeichnet.
Ohne Parametrisierung bedeutet das Testen desselben Anmeldebildschirms mit drei verschiedenen Agentennamen- und Passwortkombinationen, dass drei nahezu identische Skripte aufgezeichnet oder gepflegt werden müssen. Die Parametrisierung hingegen benötigt nur ein Skript und übergibt diesem bei jedem Durchlauf einfach eine neue Datenzeile. Daher ist datengetriebenes Testen darauf angewiesen.
Arten der Parametrisierung in QTP
UFT (früher QTP) unterstützt vier Parametertypen, die jeweils für eine andere Art von variablen Daten geeignet sind:
- Datentabellenparameter
- Test-/Aktionsparameter
- Parameter der Umgebungsvariablen
- Zufallszahlenparameter
Die folgende Tabelle vergleicht die jeweiligen Einsatzgebiete der einzelnen Typen, bevor wir ein praktisches Beispiel durchgehen.
| Parametertyp | Woher der Wert kommt | Typischer Anwendungsfall |
|---|---|---|
| Datentabelle | Globale oder Aktions-(lokale) Tabellenkalkulation, die dem Test beiliegt | Die gleichen Schritte mit vielen Zeilen Testdaten ausführen |
| Umgebungsvariable | Eingebaute Werte, im Test festgelegte Werte oder eine externe XML-Datei | einen gemeinsamen konstanten Wert, wie zum Beispiel einen URLbei jeder Aktion |
| Test/Aktion | Ein Eingabe- oder Ausgabewert, der zwischen Aktionen übergeben wird | Weiterleitung eines in einer Aktion erzeugten Werts an eine andere Aktion |
| Zufallszahl | Eine automatisch generierte Zahl innerhalb eines definierten Bereichs | Bei jedem Durchlauf einen eindeutigen Wert, wie z. B. eine Bestellnummer, erstellen |
Im weiteren Verlauf dieses Tutorials wird die Parametrisierung von Datentabellen von Anfang bis Ende erläutert. Anschließend wird anhand von funktionierenden VBScript-Beispielen erklärt, wie die anderen drei Typen konfiguriert werden.
Datentabellenparametrisierung: Schritt-für-Schritt-Beispiel
Dieser Mikrofokus UFT Lernprogramm Dieses Beispiel zeigt, wie man einen Anmeldetest für die Flugreservierungsanwendung mithilfe der Datentabelle parametrisiert. Man mag sich fragen, warum so viel Aufwand in die Automatisierung einer einfachen Anmeldung gesteckt wird. Der Nutzen wird deutlich, sobald das Szenario prüft, ob sich ein Benutzer erfolgreich anmelden kann. Kombination aus gültigem alphanumerischem Agentennamen und Passwort Die Testschritte bleiben gleich, aber die Menge der zu testenden Daten nimmt zu. In diesem Beispiel wird die Vorgehensweise auf 3 der 8 möglichen Kombinationen beschränkt.
| Testszenario | Testschritte | Testdaten |
|---|---|---|
| Überprüfen Sie, ob sich der Benutzer erfolgreich bei der Anwendung anmeldet, indem er eine KOMBINATION AUS gültigem ALPHANUMERISCHEN Agentennamen und Passwort eingibt | Schritt 1) Öffnen Sie den Flugreservierungsantrag Schritt 2) Geben Sie einen gültigen Agentennamen ein Schritt 3) Geben Sie ein gültiges Passwort ein Schritt 4) Drücken Sie OK Schritt 5) Schließen Sie die Anwendung nach erfolgreicher Anmeldung. |
Agentenname = Guru Passwort = Mercury Agentenname = Guru99 Passwort = MERCURY Agentenname = 9999 Passwort = Quecksilber |
Sie könnten die gleichen sechs Schritte wiederholt mit unterschiedlichen Datenwerten durchführen, was Sie manuell tun würden, oder Sie können die Parametrisierung verwenden.
Die einfachste Möglichkeit, ein Argument zu parametrisieren, in diesem Beispiel Guruist:
- Klicken Sie auf „Schlüsselwortansicht“.
- Klicken Sie auf das Symbol „Parametrisierung“.
Das Dialogfeld „Wertkonfiguration“ öffnet sich mit dem aktuell auf „Konstante“ eingestellten Wert. Klicken Sie auf das Optionsfeld „Parameter“. QTP Weist dem Parameter einen Standardnamen zu, den Sie vor dem Klicken auf „OK“ umbenennen können. Standardmäßig wird die neue Spalte dem Tabellenblatt „Globale Datentabelle“ hinzugefügt, sodass der Wert für jede Aktion im Test verfügbar ist; wenn Sie stattdessen das Tabellenblatt „Aktion (lokal)“ auswählen, wird er nur auf eine einzelne Aktion beschränkt.
Im globalen Tabellenblatt gibt es eine Spalte mit der Überschrift „Agentenname“ und dem Wert Guru wird erstellt. Sie können weitere Wertezeilen für diesen Parameter hinzufügen.
Wechseln zu Expertenmeinung zeigt, dass „Agent Name“ durch die Parameterreferenz „ ersetzt wurdeGuru“ sowie die Art des verwendeten Papiers.
Sie können das Argument „Passwort“ auf die gleiche Weise parametrisieren und einen anderen Satz von Testdaten eingeben.
Diese Datentabelle bedeutet QTP wird die gleichen sechs wiederholen aufgezeichnet Der Vorgang wird dreimal wiederholt. Im ersten Durchlauf werden die Daten aus Zeile eins verwendet, im zweiten die aus Zeile zwei usw. Die Statusleiste zeigt die aktuell verwendete Zeile an und hebt die entsprechende Zeile im Datenblatt hervor. Die Ergebnisse fassen alle drei Durchläufe zusammen.
Umgebungsvariablenparameter in UFT
Umgebungsvariablenparameter liefern einen Wert, der bei jeder Iteration eines Laufs konstant bleibt, wodurch sie sich für Konfigurationsdaten wie beispielsweise eine Basiskonfiguration eignen. URL oder Umgebungsname, den jede Aktion benötigt. UFT erkennt drei Arten von Umgebungsvariablen:
- Eingebaut: Vordefinierte Werte, wie z. B. der Testname, der Aktionsname oder die Betriebssystemversion, die UFT wird automatisch ausgefüllt.
- Benutzerdefinierte interne Einstellungen: Werte, die Sie innerhalb des Tests mit einem Skript festlegen; sie existieren nur für den aktuellen Testlauf und werden nicht mit dem Test gespeichert.
- Benutzerdefinierte externe Einstellungen: Name-Wert-Paare, die in einer externen XML-Datei gespeichert sind, die Sie vor dem Start des Programms laden.
Um eine Umgebungsvariable innerhalb eines Schritts zu verwenden, öffnen Sie das Dialogfeld „Wertkonfiguration“ für die Zelle, wählen Sie „Umgebung“ als Parametertyp und anschließend den Variablennamen. Das folgende VBScript zeigt alle drei Variablentypen innerhalb einer einzigen Aktion:
' Read a Built-in environment variable MsgBox Environment.Value("OS") ' Set and read a User-Defined Internal environment variable Environment.Value("AppURL") = "https://demo.guru99.com/V4/" MsgBox Environment.Value("AppURL") ' Load a User-Defined External XML file, then read a value from it Environment.LoadFromFile "C:\Guru99\EnvConfig.xml" MsgBox Environment.Value("Address")
Um die oben erwähnte externe Datei zu erstellen, erstellen Sie ein XML-Dokument mit einem Stammverzeichnis. <Environment> Element und eins <Variable> Element pro Name-Wert-Paar, dann laden Sie es über Datei > Einstellungen > Umgebung in UFT Vor dem Ausführen des Tests. Externe Variablen sind nach dem Laden schreibgeschützt. Aktualisieren Sie daher die Quell-XML-Datei, sobald sich ein Wert ändern muss.
Umgebungsvariablen unterscheiden sich von Test-/Aktionsparametern hinsichtlich ihres Gültigkeitsbereichs: Eine Umgebungsvariable steht jeder Aktion im Test zur Verfügung, während ein Test-/Aktionsparameter explizit zwischen zwei bestimmten Aktionen übergeben wird. Dieser Typ wird im Folgenden behandelt.
Test- und Aktionsparameter in UFT
Test-/Aktionsparameter ermöglichen es einer Aktion, einen Wert als Eingabeparameter an eine andere Aktion zu übergeben und von dieser einen Wert als Ausgabeparameter zurückzugeben. Im Gegensatz zu Umgebungsvariablen, die für den gesamten Test sichtbar sind, existiert ein Test-/Aktionsparameter nur für den spezifischen Aufruf, der ihn definiert. Dadurch bleiben Aktionen in verschiedenen Tests wiederverwendbar.
Um einen solchen Parameter zu erstellen, klicken Sie mit der rechten Maustaste auf die Aktion im Testablauf, wählen Sie „Aktionseigenschaften“ und fügen Sie unter der Registerkarte „Eingabeparameter“ oder „Ausgabeparameter“ einen Parameter mit einem Namen und einem Datentyp hinzu. Die Aktion kann dann in ihren Schritten direkt auf den Parameter verweisen. Wenn eine andere Aktion diese Aktion aufruft, beispielsweise mit RunAction "VerifyLogin", oneIteration, "Guru99", "Mercury"Die im Aufruf angegebenen Werte füllen die Eingabeparameter für diesen Durchlauf.
Da die Werte mit dem Aufruf übertragen werden und nicht in der Datentabelle gespeichert sind, eignen sich Test-/Aktionsparameter gut für wiederverwendbare Zwecke. Aktionen die je nach aufrufendem Test unterschiedliche Eingaben benötigen, wie beispielsweise eine gemeinsame Anmeldeaktion, die von mehreren Testabläufen verwendet wird.
Zufallszahlenparameter in UFT
Zufallszahlenparameter erzeugen automatisch einen numerischen Wert innerhalb eines von Ihnen definierten Bereichs. Dies ist immer dann nützlich, wenn ein Test einen Wert benötigt, der bei jedem Durchlauf eindeutig sein muss, wie z. B. eine neue Kunden-ID, eine Bestellnummer oder eine Buchungsreferenz, die die Anwendung nicht zweimal akzeptiert.
Um einen solchen Wert zu konfigurieren, öffnen Sie das Dialogfeld „Wertkonfiguration“ für die Zelle und wählen Sie „Zufallszahl“ als Parametertyp aus. UFT Fragt nach dem numerischen Bereich, einem optionalen Namen für den Parameter und wie oft ein neuer Wert generiert werden soll:
- Für jede Aktionsiteration – generiert bei jeder Ausführung der Aktion eine neue Nummer.
- Für jede Testiteration – generiert einmal pro Testiteration eine neue Zahl.
- Einmal pro gesamtem Testlauf – behält während des gesamten Laufs die gleiche Nummer bei.
Zufallszahlenparameter bieten die gleiche Laufzeitflexibilität wie Datentabellen- und Umgebungsvariablenparameter, jedoch entfällt bei zunehmender Anzahl datengetriebener Iterationen die Notwendigkeit, individuelle Testdaten manuell zu erstellen.
Vorteile der Parametrisierung
Die Parametrisierung zahlt sich im gesamten Automatisierungslebenszyklus aus, vom ersten Skript bis hin zu einer vollständigen Regressionssuite:
- Es ermöglicht Ihnen, zur Laufzeit unterschiedliche Werte auszuwählen, anstatt das Skript für jede Datenkombination bearbeiten zu müssen.
- Es reduziert den Zeit- und Arbeitsaufwand, der für die Abdeckung mehrerer Testdatenkombinationen erforderlich ist.
- Datentreiber, ein UFT Funktion, die alle Konstanten in einem Skript, die für die Parametrisierung geeignet sind, in einem einzigen Fenster auflistet, was die Parametrisierung großer Skripte vereinfacht.
- Es speichert die Testdaten außerhalb des Skripts, sodass ein Tester neue Zeilen, Umgebungswerte oder zufällige Bereiche hinzufügen kann, ohne die Automatisierungslogik zu verändern.
Klicken Sie auf werden auf dieser Seite erläutert wenn das Video nicht zugänglich ist








