SystemUtil.Run, SetSecure, Set, Type verstehen: QTP/UFT
โก Intelligente Zusammenfassung
SystemUtil.Run ist die UFT Ein Befehl, der zu Beginn einer Sitzung eine Datei oder eine Anwendung startet, wรคhrend Set, SetSecure und Type Werte und Tastatureingaben in das geรถffnete Fenster einspeisen.
SystemUtil.Run in UFT
Jeder aufgezeichnete GUI-Test benรถtigt einen ersten Schritt, der die zu testende Anwendung auf dem Bildschirm anzeigt. OpenText Funktionstests (UFT One, ehemals Micro Focus UFT und ursprรผnglich HP QTP), dieser Schritt ist SystemUtil.RunLassen Sie uns den folgenden Codeabschnitt verstehen.
SystemUtil.Run "C:\Program Files\HP\samples\flight\app\flight.exe" Dialog("Login").WinEdit("Agent Name:").Set "Guru" Dialog("Login").WinEdit("Agent Name:").Type micTab Dialog("Login").WinEdit("Password:").SetSecure "4af272a62666d2e" Dialog("Login").WinButton("OK").Click Window("Flight Reservation").Close
- Der erste Schritt ist der Der Befehl SystemUtil.Run wird standardmรครig verwendet von UFT/QTP eine Anwendung รถffnen. Verwenden Sie wรคhrend der Aufnahme die Windows Im Startmenรผ navigierten wir zu โFlugreservierungAnwendung. Damals war Micro Focus UFT hat den Speicherort der ausfรผhrbaren Datei ermittelt und den Befehl SystemUtil.Run zum รffnen eingefรผgt.
- Zeile 2 ist: Agentenname festlegen als Guru wie im aktiven Bildschirm angezeigt
- In Zeile 3 wird die Tabulatortaste auf einer Tastatur gedrรผckt, um den Fokus vom Feld โAgentennameโ auf das Feld โPasswortโ zu verlagern. Dies ist genau dieser Schritt. Menschliche Benutzer mรผssen Tabulator- oder Klickvorgรคnge verwenden, um ein bestimmtes Objekt auf dem Bildschirm zu fokussieren. Andererseits Schnell Test kann ein Objekt direkt anhand von Objekteigenschaften identifizieren und erfordert diese โManรถverโ-Operationen nichtWir kรถnnen diesen Schritt รผberspringen, da UFT Man kann das Passwortfeld auch ohne diesen Vorgang festlegen.
- Zeile 4 ist das Festlegen des Passworts als Mercury. UFT Eines verschlรผsselt Passwรถrter automatisch. wรคhrend der Aufnahme eingegeben werden um Sicherheitsverletzungen zu vermeiden. Dieser Wert kann nicht entschlรผsselt werden, d. h. es gibt keine Mรถglichkeit, den ursprรผnglichen Wert mithilfe dieser kryptischen Daten wiederherzustellen. Sie kรถnnen ein Passwort mit dem Password Encoder Tool explizit verschlรผsseln. Fรผr unsere Lernzwecke verwenden wir das Passwort in seiner Rohform. Und die Operation รคndert sich auch in Set
- Zeile 5 klickt auf die Schaltflรคche โOKโ.
- Zeile 6 schlieรt das Fenster
โ ๏ธ Versionshinweis: Der oben aufgezeichnete Pfad weist auf das alte C:\Program Files\HP\samples\flight Standort, der von HP genutzt wird QTPDie Beispielanwendung fรผr Flugreservierungen wird weiterhin mitgeliefert. UFT Einer, aber unter dem aktuellen Installationsordner, sodass der tatsรคchliche Pfad in einem heute aufgezeichneten Skript abweichen wird.
Klicken Sie auf werden auf dieser Seite erlรคutert wenn das Video nicht zugรคnglich ist
Syntax und Argumente von SystemUtil.Run
Die oben aufgezeichnete Zeile verwendet nur das erste Argument, die Methode akzeptiert jedoch fรผnf. Kennt man alle Argumente, lรคsst sich SystemUtil.Run aus einem Aufzeichnungsartefakt in einen bewussten Startschritt umwandeln, den man manuell schreiben kann.
SystemUtil.Run file, [params], [dir], [op], [mode]
| Argument | Erforderlich? | Was sie tut, |
| Datei | Erforderlich | Name der auszufรผhrenden Datei oder Anwendung. Eine nicht ausfรผhrbare Datei wird in der zugehรถrigen Anwendung geรถffnet. |
| params | Optional | Parameter, die an die Anwendung รผbergeben werden, wenn Datei ist eine ausfรผhrbare Datei. Standardmรครig ist es eine leere Zeichenkette. |
| dir | Optional | Standardverzeichnis fรผr die Anwendung oder Datei. Standardmรครig ist dies eine leere Zeichenkette. |
| op | Optional | Auszufรผhrende Aktion: รถffnen, bearbeiten, durchsuchen, suchen oder drucken. Ein leerer Wert fรผhrt die Aktion โรถffnenโ aus. |
| Modus | Optional | Eine ganze Zahl, die steuert, wie das Fenster beim รffnen angezeigt wird. Standardwert ist 1. |
Das op Das Argument ist dasjenige, das die meisten Tester nie entdecken. Es lรคsst sich auf dieselben Verben zurรผckfรผhren. Windows Explorer bietet Ihnen per Rechtsklick verschiedene Funktionen.
| op Wert | Lรถsung |
| XNUMXh geรถffnet | รffnet die Datei, den Ordner oder die ausfรผhrbare Datei mit dem angegebenen Namen. Datei. |
| bearbeiten | Startet einen Editor und รถffnet das Dokument zur Bearbeitung. Schlรคgt fehl, wenn die Datei kein bearbeitbares Dokument ist. |
| Entdecken Sie | Durchsucht den Ordner mit dem Namen in Datei. |
| gefunden | Startet eine Suche im angegebenen Ordnerpfad. |
| Druckt das Dokument mit dem Namen in DateiSchlรคgt fehl, wenn die Datei nicht druckbar ist. |
Fรผr ModusDie im Alltag relevanten Werte sind 0 (Fenster ausblenden und ein anderes aktivieren), 1 (Fenster aktivieren und in Originalgrรถรe anzeigen), 2 (minimiert aktivieren) und 3 (maximiert aktivieren). Hรถhere Werte steuern den Fokus und das Wiederherstellungsverhalten und sind in Tests selten erforderlich.
SystemUtil.Run-Beispiele: Anwendungen, Browser und Dateien
Die folgenden Beispiele bauen Argument fรผr Argument auf, sodass Sie sehen kรถnnen, welchen Beitrag jede Position leistet. Fรผgen Sie sie in eine neue Aktion ein und fรผhren Sie sie zeilenweise aus.
1) Nur Datei โ die kรผrzeste sinnvolle Form. Eine ausfรผhrbare Datei im Systempfad benรถtigt keinen Ordner, und ein Dokument รถffnet sich in jeder beliebigen Anwendung. Windows hat sich dafรผr angemeldet.
SystemUtil.Run "notepad.exe" SystemUtil.Run "C:\Data\Orders.txt"
2) Datei plus Parameter โ Alles, was die Anwendung รผber die Kommandozeile akzeptiert, wird hier eingegeben. So wird ein Browser unter einer bestimmten Adresse und nicht auf seiner Startseite geรถffnet.
SystemUtil.Run "notepad.exe", "C:\Data\Orders.txt"
3) Hinzufรผgen von Verzeichnis โ nรผtzlich, wenn eine Anwendung sich weigert zu starten, es sei denn, ihr eigener Ordner ist das Arbeitsverzeichnis.
SystemUtil.Run "flight.exe", "", "C:\Program Files\HP\samples\flight\app\"
4) Hinzufรผgen von Operationen โ dieselbe Datei, vier verschiedene Ergebnisse.
SystemUtil.Run "C:\Data\Orders.txt", "", "", "edit" SystemUtil.Run "C:\Data", "", "", "explore" SystemUtil.Run "C:\Data", "", "", "find" SystemUtil.Run "C:\Data\Orders.txt", "", "", "print"
5) Additionsmodus โ รffnen Sie das Fenster maximiert, damit spรคtere Schritte nicht durch ein teilweise ausgeblendetes Steuerelement blockiert werden.
SystemUtil.Run "notepad.exe", "C:\Data\Orders.txt", "", "open", 3
Da das geรถffnete Fenster zu einem gewรถhnlichen Testobjekt wird, kann es direkt in der nรคchsten Zeile gesteuert werden. Die offizielle Dokumentation verknรผpft โAusfรผhrenโ mit โTypisierenโ und โSchlieรenโ genau auf diese Weise.
SystemUtil.Run "C:\type.txt", "", "", "" Window("Text:=type.txt - Notepad").Type "happy days" Window("Text:=type.txt - Notepad").Close
Beachten Sie die beschreibende Text:= In diesem Code-Ausschnitt ist kein Repository-Eintrag erforderlich. Dasselbe Prinzip wird ausfรผhrlich behandelt in beschreibende Programmierungund fest codierte Pfade wie die oben genannten werden in der Regel besser in Umgebungsvariablen So wird auf jedem Rechner ein Skript ausgefรผhrt.
Set, SetSecure und Type: Welche Methode verwenden?
Die Zeilen 2 bis 4 des aufgezeichneten Skripts verwenden drei verschiedene Methoden fรผr dasselbe Bearbeitungsfeld. Diese Methoden sind nicht austauschbar, und die Auswahl der falschen Methode fรผhrt hรคufig dazu, dass ein Arbeitsschritt ohne Eingabe ausgefรผhrt wird.
| Methodik | Was es sendet | Verwenden Sie es, wenn |
| Stelle den | Schreibt einen Klartextwert direkt in das Feld. | Normale Dateneingabe, einschlieรlich eines Passworts, das Sie gerne lesbar aufbewahren. |
| SetSecure | Schreibt eine kodierte Zeichenkette, die UFT Die Dekodierung erfolgt zur Laufzeit. | Ein beliebiges Passwortfeld, sodass der Wert weder im Skript noch in den Ergebnissen erscheint. |
| Typ | Sendet rohe Tastatureingaben, einschlieรlich Tasten wie micTab. | Das Verhalten der Tastatur ist Teil des Tests, oder ein Steuerelement reagiert nur auf tatsรคchliche Tastendrรผcke. |
Wie im Walkthrough vermerkt, existiert der Tabulator-Tastendruck in Zeile 3 nur deshalb, weil das Aufnahmegerรคt eine menschliche Gewohnheit aufgezeichnet hat. UFT Das Passwortfeld wird anhand seiner Eigenschaften identifiziert, daher รคndert das Lรถschen dieser Zeile nichts. Ersetzt man SetSecure durch Set, funktioniert der gleiche Login mit einem lesbaren Passwort.
Dialog("Login").WinEdit("Password:").Set "mercury"
Um den umgekehrten Weg zu gehen und einen Wert auรerhalb einer Aufnahmesitzung zu kodieren, verwenden Sie die Passwort-EncoderDas GUI-Tool wird mitgeliefert UFT Eine, und dieselbe Kodierung ist รผber die Kommandozeile verfรผgbar als CryptonCMD.exe -e im Produktordner. Beide erzeugen Zeichenketten, die Sie in ein SetSecure-Argument oder in eine DatentabellenparameterDer Anbieter stellt ausdrรผcklich klar, dass diese Kodierung kein Sicherheitsstandard ist: Sie verbirgt einen Wert auf dem Bildschirm, sie schรผtzt aber keine echten Kundendaten.
Sobald diese drei Methoden zur Gewohnheit geworden sind, folgt der Rest der Sprache schnell โ die VBScript-Grundlagen und je breiter UFT Eine Tutorialreihe Schleifen, Bedingungen und wiederverwendbare Funktionen abdecken, wรคhrend Objekt-Spion und GetROProperty zeigen Ihnen, welche Eigenschaften UFT Eines der Spiele findet gerade statt.
