Разбиране на SystemUtil.Run, SetSecure, Set, Тип: QTP/UFT

⚡ Умно обобщение

SystemUtil.Run е UFT Една команда, която стартира файл или приложение в началото на сесия на изпълнение, докато Set, SetSecure и Type въвеждат стойности и натискания на клавиши в прозореца, който отваря.

  • 🔘 Автоматично вмъкване: Стартиране на приложение от Windows Стартовото меню по време на запис прави UFT Един от начините е да напишете стъпката SystemUtil.Run.
  • ☑️ Пет аргумента: Run приема file, params, dir, op и mode, така че един оператор може да отваря, редактира, изследва, намира или отпечатва цел.
  • ✅ Множество спрямо тип: Set записва стойност директно в поле, докато Type изпраща сурови клавишни комбинации, като например micTab, от които човек би се нуждаел.
  • 🧪 Задаване на защитени пароли: Записаните пароли се съхраняват като кодирани низове, които не могат да бъдат върнати в оригиналния текст.
  • 🛠️ Енкодер за пароли: Графичният потребителски интерфейс на Password Encoder и CryptonCMD.exe създават едни и същи кодирани низове извън сесия на запис.
  • 📌 Настоящо именуване: QTP сега OpenText Функционално тестване (UFT Едно), а SystemUtil.Run замества остарелия оператор InvokeApplication.

SystemUtil.Run, SetSecure, Set и Type оператори в QTP/UFT Един сценарий

SystemUtil.Run в UFT

Всеки записан GUI тест се нуждае от първа стъпка, която извежда тестваното приложение на екрана. OpenText Функционално тестване (UFT Едно, преди това Micro Focus UFT и първоначално HP QTP), тази стъпка е SystemUtil.RunНека разберем следния фрагмент от код

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
  • Първата стъпка е Командата SystemUtil.Run, която се използва по подразбиране от UFT/QTP за да отворите приложение. По време на запис, като използвате Windows Старт меню, навигирахме до „Резервация на полет„приложение“. По това време Micro Focus UFT идентифицира местоположението на изпълнимия файл и вмъкна командата SystemUtil.Run, за да го отвори.
  • Ред 2 задава името на агента като Guru както е показано на активния екран
  • Ред 3 е натискането на клавиша Tab на клавиатурата, за да преместите фокуса от полето за име на агент към полето за парола, което е точно тази стъпка. Потребителите трябва да използват операции с Tab или Click, за да се фокусират върху определен обект на екрана. От друга страна, Бърз тест може директно да идентифицира обект, като използва свойствата на обекта и не изисква тези операции за „маневриране“.Можем да изтрием тази стъпка, тъй като UFT Все още ще можете да зададете полето за парола без тази операция.
  • Ред 4 е Задаване на парола като Mercury. UFT Човек автоматично криптира пароли въведени по време на запис за да избегнете пробиви в сигурността. Тази стойност не може да бъде декриптирана, т.е. няма начин да се възстанови оригиналната стойност с помощта на тези криптични данни. Можете изрично да шифровате парола с помощта на Password Encoder Tool. За нашите учебни цели ще използваме паролата в необработен вид. И операцията също ще се промени на Set
  • Ред 5 е щракване върху бутона ОК
  • Ред 6 затваря прозореца

⚠️ Бележка към версията: Записаният път по-горе сочи към старото C:\Program Files\HP\samples\flight местоположение, използвано от HP QTPПримерното приложение за резервация на полет все още се доставя с UFT Едно, но в текущата инсталационна папка, така че буквалният път в скрипт, записан днес, ще се различава.

Кликнете тук ако видеото не е достъпно

Синтаксис и аргументи на SystemUtil.Run

Записаният ред по-горе използва само първия аргумент, но методът приема пет. Познаването на всички тях превръща SystemUtil.Run от артефакт на записващо устройство в умишлена стъпка за стартиране, която можете да напишете на ръка.

SystemUtil.Run file, [params], [dir], [op], [mode]
аргумент Задължително? Какво го прави
досие Длъжен Име на файла или приложението, което ще се изпълни. Неизпълним файл се отваря в свързаното с него приложение.
params По избор Параметри, предадени на приложението, когато досие е изпълним файл. По подразбиране е празен низ.
реж. По избор Директория по подразбиране за приложението или файла. По подразбиране е празен низ.
op По избор Действие за изпълнение: отваряне, редактиране, проучване, намиране или печат. Празна стойност изпълнява отваряне.
вид По избор Цяло число, което контролира как се показва прозорецът при отваряне. По подразбиране е 1.

- op аргументът е този, който повечето тестери никога не откриват. Той се свързва със същите глаголи Windows Explorer предлага с десен бутон на мишката.

стойност на операцията Резултат
отворен Отваря файла, папката или изпълнимия файл, посочен в досие.
редактирам Стартира редактор и отваря документа за редактиране. Неуспешно, ако файлът не е редактируем документ.
изследват Разглежда папката, посочена в досие.
намерите Започва търсене от посочения път до папката.
печат Отпечатва документа, посочен в досиеНеуспешно, ако файлът не е за печат.

За вид, стойностите, които са от значение за всеки ден, са 0 (скриване на прозореца и активиране на друг), 1 (активиране и показване в оригиналния му размер), 2 (активиране на минимизирания) и 3 (активиране на максимизирания). По-високите стойности контролират фокуса и възстановяват поведението и рядко са необходими в тест.

Примери за SystemUtil.Run: Приложения, браузъри и файлове

Примерите по-долу изграждат един аргумент наведнъж, така че можете да видите какво добавя всяка позиция. Поставете ги в ново действие и ги изпълнявайте ред по ред.

1) само файл — най-кратката полезна форма. Изпълним файл в системния път не се нуждае от папка и документът се отваря във всяко приложение Windows се е регистрирал за него.

SystemUtil.Run "notepad.exe"
SystemUtil.Run "C:\Data\Orders.txt"

2) файл плюс параметри — всичко, което приложението би приело от командния ред, отива тук. Така браузърът се отваря на конкретен адрес, а не на началната си страница.

SystemUtil.Run "notepad.exe", "C:\Data\Orders.txt"

3) добавяне на директория — полезно, когато дадено приложение откаже да се стартира, освен ако собствената му папка не е работната директория.

SystemUtil.Run "flight.exe", "", "C:\Program Files\HP\samples\flight\app\"

4) добавяне на op — един и същ файл, четири различни резултата.

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) режим на добавяне — отворете прозореца максимално, така че по-късните стъпки да не бъдат блокирани от частично скрит контрол.

SystemUtil.Run "notepad.exe", "C:\Data\Orders.txt", "", "open", 3

Тъй като стартираният прозорец се превръща в обикновен тестов обект, още следващият ред може да го управлява. Официалната документация съчетава Run с Type и Close точно по този начин.

SystemUtil.Run "C:\type.txt", "", "", ""
Window("Text:=type.txt - Notepad").Type "happy days"
Window("Text:=type.txt - Notepad").Close

Обърнете внимание на описателното Текст:= форма в този фрагмент: не е необходим запис в хранилището. Същата идея е разгледана подробно в описателно програмиранеи твърдо кодираните пътища като тези по-горе обикновено се съхраняват по-добре в променливи на средата така че на всяка машина се изпълнява един скрипт.

Set, SetSecure и Type: Кой метод да използвате

Редове от 2 до 4 от записания скрипт използват три различни метода в едно и също поле за редактиране. Те не са взаимозаменяеми и избирането на грешен метод е честа причина стъпката да премине безшумно, без да се въведе нищо.

Начин на доставка Какво изпраща Използвайте го, когато
комплект Записва стойност в обикновен текст директно в полето. Нормално въвеждане на данни, включително парола, която желаете да запазите четлива.
SetSecure Записва кодиран низ, който UFT Едното декодира по време на изпълнение. Всяко поле за парола, така че стойността никога да не се появява в скрипта или резултатите.
Тип Изпраща сурови натискания на клавиши, включително клавиши като micTab. Поведението на клавиатурата е част от теста или контролата реагира само на реални клавиши.

Както е отбелязано в ръководството, натискането на клавиша Tab на ред 3 съществува само защото записващото устройство е уловило човешки навик. UFT Полето за парола се идентифицира по неговите свойства, така че изтриването на този ред не променя нищо. Заменете SetSecure с Set и същото влизане ще работи с четлива парола.

Dialog("Login").WinEdit("Password:").Set "mercury"

За да отидете в обратната посока и да кодирате стойност извън сесия на запис, използвайте Кодировчик на паролиИнструментът с графичен потребителски интерфейс се доставя с UFT Едно и също кодиране е достъпно от командния ред като CryptonCMD.exe -e в папката „bin“ на продукта. И двата генерират низове, които можете да поставите в аргумент на SetSecure или в параметър на таблицата с данниДоставчикът е изрично заявил, че това кодиране не е стандарт за сигурност: то скрива стойност на екрана, не защитава реалните данни на клиента.

След като тези три метода станат втора природа, останалата част от езика следва бързо - Основи на VBScript и по-широкото UFT Една серия от уроци покриване на цикли, условия и функции за многократна употреба, докато Object Spy и GetROProperty ще ви покажа кои имоти UFT Всъщност едното съвпада.

Въпроси и Отговори

Изразът Run се записва в теста автоматично всеки път, когато стартирате приложение от Windows Менюто „Старт“ или диалоговия прозорец „Изпълнение“ по време на запис.ping Ръчното изявление дава същия резултат.

Не. Кодираният низ не може да бъде върнат в оригиналната парола, поради което загубената стойност трябва да бъде прекодирана, а не декриптирана. Заменете целия аргумент, ако паролата се промени.

Използвайте инструмента Password Encoder, който се доставя с UFT Едно или изпълнете CryptonCMD.exe -e, последвано от низа от папката bin на продукта. И двете излъчват стойност, подходяща за аргумент на SetSecure или клетка от таблица с данни.

Настройките за запис и изпълнение могат да отворят приложението преди първата стъпка, а остарелият оператор InvokeApplication все още работи. Доставчикът запазва InvokeApplication само за обратна съвместимост и препоръчва Run вместо това.

Освен Window(…).Close, обектът SystemUtil предлага CloseProcessByName, CloseProcessById, CloseProcessByHwnd, CloseProcessByWndTitle и CloseDescendentProcesses, които затварят всеки процес, стартиран от сесията на изпълнение.

Асистентите с изкуствен интелект могат да изготвят оператори Run, Set и Type от описание на разбираем английски език и да предлагат корекции, когато локаторът е повреден. Всеки генериран ред все още се нуждае от проверка спрямо свойствата на реалния обект, преди да бъде изпълнен.

Copilot допълва VBScript във всеки редактор, който поддържа, така че помощна функция или цикъл върху тестови данни е лесен за изграждане. UFT Човек няма плъгин Copilot, така че кодът се поставя в редактора и се проверява там.

Буквалният път е обичайната причина: различна инсталационна папка, разделяне на 32-битови спрямо 64-битови програмни файлове или несъществуващо картографирано устройство. Запазването на пътища в променливите на средата премахва проблема.

Обобщете тази публикация с: