Umgebungsvariable in QTP (UFT) mit Beispiel

⚡ Intelligente Zusammenfassung

Umgebungsvariablen in QTP und UFT Ein Speichersystem, das von jeder Aktion, Funktionsbibliothek und jedem Wiederherstellungsszenario gelesen werden kann, ermöglicht es einem Test, … URLs, Anmeldeinformationen, Pfade und Sprachzeichenfolgen, ohne diese irgendwo fest zu codieren.

  • 🔘 Globaler Geltungsbereich: Eine Variable ist für jede Aktion, Funktionsbibliothek und jedes Wiederherstellungsszenario im Test sichtbar.
  • ☑️ Zwei Familien: Vordefinierte Variablen sind schreibgeschützt; benutzerdefinierte Variablen können Sie selbst erstellen und ändern.
  • ✅ Intern versus extern: Interne Variablen werden innerhalb des Tests gespeichert, externe Variablen befinden sich in einer gemeinsam nutzbaren XML-Datei.
  • 🧪 Ein Accessoire: Environment.Value liest beliebige Variablen und schreibt benutzerdefinierte Variablen aus VBScript.
  • ️ Laden zur Laufzeit: Environment.LoadFromFile tauscht zur Laufzeit einen kompletten Variablensatz aus, sodass ein Skript viele Umgebungen steuert.
  • 📌 Für die Lokalisierung entwickelt: Tauschping Die XML-Datei ändert Sprachzeichenfolgen, ohne dass ein einziger Arbeitsschritt erforderlich ist.

Eingebaute und benutzerdefinierte Umgebungsvariablen in QTP und UFT Eins

Was ist eine Umgebungsvariable?

Umgebungsvariablen sind dynamische „Objekte“ auf einem Computer, die einen Wert speichern können, auf den wiederum ein oder mehrere Softwareprogramme zugreifen können. Windows.

Umgebungsvariablen sind dynamisch und können geändert werden. Es gibt eine Reihe von Umgebungsvariablen, auf die Programme zugreifen können und die Informationen über ihre Systemumgebung liefern. Das Testtool führt neben den vorhandenen Variablen eine eigene Liste. Windows bietet.

UFT Eine Umgebungsvariable

Mikrofokus UFT Auf Umgebungsvariablen kann von allen Aktionen, der Funktionsbibliothek und den Wiederherstellungsszenarien zugegriffen werden.

⚠️ Versionshinweis: Dieses Produkt wurde ursprünglich als HP QuickTest Professional ausgeliefert, später in Unified Functional Testing umbenannt und wird heute als HP QuickTest Professional verkauft. OpenText Funktionstests (UFT Ein)Das Umgebungsobjekt und die folgenden Bildschirme sind unverändert – nur der Produktname hat sich geändert. offizielle Umweltobjektreferenz enthält die aktuelle Syntax.

Arten von QTP Umgebungsvariablen

Umgebungsvariablen sind solche Variablen, die global in den Tests verwendet werden können. Es gibt zwei Arten von Umgebungsvariablen

  • Integrierte Variablen
  • Benutzerdefinierte Variablen (Hat 2 Untertypen)
    • Intern
    • Extern

Vordefinierte Variablen beschreiben die Maschine und den Testlauf und sind schreibgeschützt. Benutzerdefinierte Variablen enthalten Ihre eigenen Daten, und nur die internen Variablen können von einem Skript aus beschrieben werden.

Eingebaute Variablen

In QTP, integrierte Variablen sind vordefinierte Variablen. Es ermöglicht dem Benutzer, Informationen über den ausgeführten Test und Informationen über das Betriebssystem abzurufen (Operating Systems), auf dem der Test ausgeführt wird. Einige der integrierten Variablen sind Aktionsiteration, OperaTing-System, Testverzeichnis, lokale Hostnamen, OperaTing Systemversion usw.

Gehe zur Datei -> Einstellungen -> Im Reiter „Umgebung“ finden Sie den Abschnitt mit den Umgebungsvariablen und deren Liste. Das Fenster öffnet sich mit der integrierten Liste, wie unten dargestellt.

Umgebungsbereich des Dialogfelds „Testeinstellungen“ mit der Liste der integrierten Funktionen QTP Umgebungsvariablen

Die Werte aus Umgebungsvariablen können abgerufen und während der Testsitzung bei Bedarf verwendet werden. Dies sind die Namen, die Tester am häufigsten verwenden.

Eingebaute Variable Was es zurückgibt
OS OperaSystemfamilie der Maschine, die den Test ausführt
OSVersion OperaTing-Systemversion
Testname Name des aktuell laufenden Tests
TestDir Ordner, in dem der Test gespeichert ist
Aktionsname Name der aktuell ausgeführten Aktion
AktionIteration Iterationsnummer der aktuellen Aktion
Lokaler Hostname Hostname des lokalen Rechners
Ergebnisverzeichnis In welchen Ordner werden die Laufergebnisse geschrieben?

Ejemplo:

MsgBox Environment.Value("OSVersion")

Diese einzelne Zeile gibt die Betriebssystemversion direkt aus der Run-Session aus.

Meldungsfeld, das den von der integrierten Umgebungsvariablen OSVersion zurückgegebenen Wert anzeigt.

Benutzerdefinierte Variablen

Vor der Durchführung des Tests sind dies die Variablen, die vom Benutzer definiert werden. Es kann global über verschiedene Tests hinweg verwendet werden, oder sie können auch auf einen Test beschränkt werden.

Benutzerdefinierte Variablen wurden in zwei Typen eingeteilt

  • Intern
  • Extern
  1. Benutzerdefiniert – Interne VariablenDiese Variablen werden vom Benutzer vor der Ausführung des Tests definiert und stehen nur für den jeweiligen Test zur Verfügung.
  2. Benutzerdefiniert – Externe Variablen: Diese Variablen werden vom Benutzer definiert und können global für verschiedene Tests verwendet werden.

Externe Variablen können auf zwei Arten geladen werden. Dies kann manuell vor dem Testlauf über die Registerkarte „Umgebung“ oder eine benutzerdefinierte Ansicht erfolgen, indem das Kontrollkästchen „Variablen laden“ aktiviert und anschließend die XML-Datei ausgewählt wird. Die zweite Möglichkeit ist die Verwendung eines Skriptbefehls, der weiter unten auf dieser Seite beschrieben wird.

Sie können eine benutzerdefinierte Variable wie folgt erstellen: Ändern Sie den Variablentyp auf benutzerdefiniert und fügen Sie eine Zeile mit Name und Wert hinzu.

Hinzufügen einer neuen benutzerdefinierten Umgebungsvariablen im Umgebungsbereich von QTP Einstellungen testen

Die fertige Zeile erscheint dann in der benutzerdefinierten Liste.

Benutzerdefinierte Umgebungsvariable Guru99 wird mit seinem Wert im Bereich „Umgebung“ aufgeführt.

Sie können wie folgt auf die Variable zugreifen

MsgBox Environment.Value("Guru99")

Die Meldungsbox gibt den unter diesem Variablennamen gespeicherten Wert zurück.

Meldungsfeld, das den Wert der benutzerdefinierten Umgebungsvariablen mit dem Namen anzeigt Guru99

Methoden und Eigenschaften von Umgebungsobjekten

Beide Listen sind über einen einzigen Weg erreichbar. VBScript Es handelt sich um ein Objekt namens Environment. Es stellt eine Eigenschaft, eine Methode und eine schreibgeschützte Eigenschaft bereit, und das ist die gesamte API-Oberfläche.

Member Typ Was sie tut,
Wert Eigenschaft Ruft beliebige Umgebungsvariablen ab und setzt benutzerdefinierte Variablen.
Aus Datei laden Methodik Lädt zur Laufzeit eine externe Umgebungsvariablen-XML-Datei.
ExternerDateiname Eigenschaft Gibt die im Bereich „Umgebung“ ausgewählte externe Datei oder eine leere Zeichenfolge zurück.

Lesen ist überall erlaubt. Schreiben funktioniert nur mit benutzerdefinierten internen Variablen, da eingebaute Variablen und Variablen, die aus einer Datei geladen werden, schreibgeschützt sind.

' Read any variable
strVersion = Environment.Value("OSVersion")

' Write a user-defined internal variable
Environment.Value("Guru99") = "SecondValue"

' Check which external file is active
If Environment.ExternalFileName = "" Then
    MsgBox "No external environment file is loaded"
End If

Dieselbe Anweisung verhält sich in einer Aktion, einer Funktionsbibliothek oder einer Wiederherstellungsszenario.

Wie man eine externe Umgebungsvariablen-XML-Datei erstellt und lädt

Eine externe Datei wandelt die Variablenliste in ein gemeinsam nutzbares Asset um, sodass ein Test ohne Bearbeitungsschritt gegen Entwicklung, Staging und Produktion ausgeführt werden kann.

  1. Definieren Sie die Werte zunächst als interne benutzerdefinierte Variablen im Umgebungsbereich.
  2. Verwenden Sie die Export Schaltfläche in diesem Bereich, die den richtigen Text schreibt XML Struktur für Sie.
  3. Speichern Sie für jede Umgebung eine separate Datei, beispielsweise EnvDev.xml und EnvProd.xml.
  4. Weisen Sie den Test auf eine Datei zu, indem Sie das Kontrollkästchen „Variablen laden“ aktivieren, oder laden Sie die Datei aus dem Skript.

Die Datei ist eine flache Liste von Variablen- und Wertepaaren in der unten stehenden Syntax.

<Environment>
  <Variable>
    <Name>This is the first variable name</Name>
    <Value>This is the first variable value</Value>
  </Variable>
</Environment>

Das Laden aus dem Code ist eine zweizeilige Schutzmaßnahme: Es wird geprüft, ob eine Datei bereits aktiv ist, und sie wird nur dann geladen, wenn dies nicht der Fall ist.

fileName = Environment.ExternalFileName
If fileName = "" Then
    Environment.LoadFromFile "C:\testEnv.xml"
End If

Bewährte Vorgehensweisen und häufige Fehler

Die meisten Probleme resultieren eher aus dem Gültigkeitsbereich und der Rechtschreibung als aus der Syntax. Die Tabelle listet die Fehler auf, auf die Tester am häufigsten gestoßen sind.

Symptom Verursachen Fixieren
Die Variable gibt einen leeren Wert zurück. Der Name ist falsch geschrieben oder wurde diesem Test nie hinzugefügt. Die Namen stimmen exakt überein; überprüfen Sie die Schreibweise im Bereich „Umgebung“.
Fehler beim Ausführen einer Zuweisungszeile Das Skript schreibt in eine integrierte oder extern geladene Variable. Es können nur benutzerdefinierte interne Variablen zugewiesen werden.
Die externe Datei wird ignoriert. Das Kontrollkästchen ist nicht aktiviert und LoadFromFile wurde nie aufgerufen. Setzen Sie ein Häkchen oder laden Sie die Datei aus dem Skript.
An anderer Stelle fehlt eine gemeinsame Variable. Die Variable wurde als intern definiert. Verschieben Sie es in eine externe XML-Datei, damit jeder Test es laden kann.
  • Verwenden Sie eine einheitliche Namenskonvention, damit der Bereich auch bei wachsender Listenanzahl lesbar bleibt.
  • Die XML-Dateien müssen unter Versionskontrolle stehen und dürfen niemals echte Passwörter enthalten.
  • Reservieren Sie Umgebungsvariablen für Werte, die während eines Laufs konstant bleiben, und überlassen Sie die zeilenweise Datenverarbeitung dem System. Datentabelle.

Häufig gestellte Fragen

Ein Passwort im Klartext in einer XML-Datei ist für jeden lesbar, der die Datei öffnet. Speichern Sie den Benutzernamen in einer Umgebungsvariablen und übergeben Sie das Passwort verschlüsselt, wie im folgenden Beispiel gezeigt: SetSecure -Guide.

Nein. Eingebaute Variablen sind schreibgeschützt, daher führt eine Zuweisung zu einem Laufzeitfehler. Nur benutzerdefinierte interne Variablen akzeptieren neue Werte. Variablen, die aus einer externen Datei geladen werden, sind innerhalb des Tests ebenfalls schreibgeschützt.

Pro Sprache wird eine externe Datei mit den Schnittstellenzeichenfolgen und Endpunkten für das jeweilige Gebietsschema erstellt. Tauschenping Die Datei ändert alle erwarteten Werte gleichzeitig, daher werden mit denselben Schritten eine französische und eine japanische Version überprüft.

Eine Umgebungsvariable speichert einen Wert für den gesamten Durchlauf und ist für jede Aktion sichtbar. Ein Datentabellenparameter liefert in jeder Iteration einen anderen Wert und gehört zu einem Tabellenblatt; er eignet sich für datengetriebene Anwendungsfälle.

KI-Tools durchsuchen eine Suite nach fest codierten URLDas System analysiert Pfade und Anmeldeinformationen und schlägt anschließend Umgebungsvariablen als Ersatz vor. Maschinelle Lernmodelle kennzeichnen zudem Werte, die zwischen verschiedenen Umgebungen abweichen, sodass die korrekten Einträge in die externe Datei übernommen werden.

Copilot führt Aufrufe von `Environment.Value` und `LoadFromFile` zuverlässig aus, da das Objekt über eine sehr kleine API verfügt. Betrachten Sie den Vorschlag als Entwurf: Copilot kann nicht wissen, welche Namen in Ihrem Umgebungsbereich vorhanden sind. Überprüfen Sie daher jeden einzelnen vor der Ausführung.

Ja. Das Environment-Objekt ist sowohl von Aktionen als auch von Funktionsbibliotheken und Wiederherstellungsszenarien aus erreichbar, sodass ein Wiederherstellungshandler ohne zusätzlichen Aufwand auf ein Flag wie den Umgebungsnamen verzweigen kann.

Im Bereich „Umgebung“ des Dialogfelds „Testeinstellungen“ wird die ausgewählte Datei benannt. Im Code gibt die Eigenschaft „ExternalFileName“ denselben Namen zurück oder eine leere Zeichenfolge, wenn für den Testlauf keine externe Datei geladen wurde.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: