qtp tutorial 21 how make qtp tests modular
QTP действия и свойства на действията
Действията разделят теста на логически единици. Това помага при лесно четими тестове и гарантира, че е постигната модулност.
Има 3 вида QTP действия:
- Многократно - само те могат да бъдат извикани няколко пъти в рамките на едни и същи или различни тестове
- Не може да се използва многократно - Те не могат да бъдат извикани с други действия
- Външни действия - многократно действие, когато е извикано от друго действие, се превръща във външно действие в извиканото действие.
=> Щракнете тук за серията QTP Training Tutorials
Какво ще научите:
Как да използвам QTP действия при тестове?
# 1) По подразбиране всички нови действия могат да се използват многократно
# две) Всяко действие има свой собствен лист с данни за действие или локален лист
# 3) Извикване на съществуващо действие в друг тест може да бъде вмъкнато с помощта на опцията от менюто: „ Вмъкване-> Извикване на съществуващо действие-> (Избор на тест / действие) ”
# 4) Извикването на изявление или действие, вмъкнато в текущия тест, ще бъде както следва:
RunAction “Action2(Testname)”, oneiteration
# 5) Действието ще бъде извикано толкова пъти, колкото действието, наречено свойства, е посочено за родителското действие.
Например,
Action2 е действие за многократна употреба в Test2. Извиква се при всяка итерация в таблицата с данни на Test2.
Action1 е действието, което извиква Action2 в Test1.
Action1 се изпълнява само веднъж.
След това Action2 ще се изпълни само веднъж, независимо колко пъти е бил извикан в Test2.
# 6) Предишно многократно действие може да бъде променено, за да стане неизползваемо и обратно.
# 7) Когато предишно действие за многократна употреба е маркирано като не може да се използва повторно, тестът, който извиква действието, е неуспешен и на потребителя се показва предупредително съобщение.
# 8) Видяхме в предишната статия как параметрите могат да бъдат предадени действия „До“ и „От“. За да ги определите, можете да направите едно от следните:
- Изберете действието от изгледа на ключови думи, щракнете с десния бутон и изберете свойствата на действието.
- Докато сте в действието в експертния изглед, изберете Редактиране-> Действие Свойства от менюто.
# 9) Появява се диалоговият прозорец с Общи (име, описание, многократна употреба или не), Параметри (i / p или o / p), свързани хранилища (могат да свържат ИЛИ друго действие) и Използвани от раздели
# 10) За да изпратите параметри към действие, общият синтаксис е:
RunAction “Action Name”. Oneiteration, i/p parameters, o/p parameters
По-долу са някои от начините, по които можете да използвате изходната стойност на действие в теста си в зависимост от вашите изисквания:
пример за сливане на сортиране c ++
да се) Стойността o / p за действие (стойност, върната от извикано действие) може да се съхранява в променлива.
RunAction “Action1”,OneIteration, i/pvalues, x, x being the variable
б) Стойността o / p за действие може да се съхранява в променлива на средата.
За да създадете променлива на среда, изберете „Файл-> Настройки-> раздел Околна среда“, в падащото меню „Тип променлива“ изберете дефинирана от потребителя и щракнете върху + и „Добавяне на нов параметър на средата“ - въведете името (env_Var) и празно стойност и щракнете върху OK.
За да присвоите стойността o / p на тази променлива,
RunAction “Action1”,OneIteration, i/pvalues, Environment(“env_var”)
° С) Стойността o / p за действие може да се съхранява в колона на таблицата с данни.
RunAction “Action1”, OneIteration, i/pvalue, DataTable(“A”, dtGlobalsheet)
QTP функции и библиотеки с функции
Въпреки че има много вградени функции, налични в QTP за тестера, все още може да има случаи, когато може да искате да извършите конкретна операция и да направите тези стъпки за повторна употреба. Можете да направите това, като създадете дефинирани от потребителя функции, да ги поставите в отделен файл, да го свържете с теста и да накарате името на функцията да работи като ключова дума за конкретния тест.
Така че по дефиниция функцията не е нищо друго освен парче код, което изпълнява определена задача.
Нека създадем библиотека с функции сега:
Използвайте опцията от менюто „ Файл-> Ново-> Библиотека с функции ”Или„ Shift + Alt + N ”или щракнете върху падащото меню„ Ново ”в менюто и изберете„ Библиотека с функции ”
QTP ще отвори редактор, много подобен на изгледа на ключови думи на тест. Тук можете да напишете вашия код. Ще включа изявления, които ще влязат потребител в страницата gmail.com.
Function gmailLogin(uname, pwd) SystemUtil.Run 'iexplore.exe', 'http://www.gmail.com' Browser('Gmail: Email from Google').page('Gmail: Email from Google').Sync Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebEdit('Email').Set uname Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebEdit('Passwd').SetSecure pwd Browser('Gmail: Email from Google').Page('Gmail: Email from Google').WebButton('Sign in').Click End Function
След като приключите с писането на кода, „Запазете“ функционалната библиотека, като изберете необходимото име и местоположение на вашия компютър.
Забележка: Функционалната библиотека не се включва автоматично в нито един от вашите тестове. Ще трябва да го направите изрично.
Следват стъпките за свързване на библиотека с функции към теста:
Етап 1) Отворете теста си или създайте нов тест
Стъпка 2) В зависимост от настройките, които имате на вашата IDE, може да имате достъп до екрана с ресурси вече. Ако не изберете опцията от менюто “ Преглед-> Ресурси ”И това показва прозореца.
Стъпка # 3) Щракнете с десния бутон върху „Библиотеки на асоциирани функции“, щракнете върху опцията „Библиотека на асоциирани функции“ и изберете файла на библиотеката, който сте създали по-рано.
кой е най-добрият изтеглящ mp3 за android
Стъпка # 4) Ще има съобщение, което иска потвърждение на тестера, преди да преобразува пътя в относителен път. Това се прави, за да се гарантира, че тестът няма да се провали, ако файловете се преместят, стига да се следва същата йерархия. Щракнете върху да в този диалогов прозорец:
Стъпка # 5) Той ще се показва под този възел от сега и по този начин проверявате дали вашата асоциация е работила или не.
Стъпка # 6) След като свържете библиотеката, не забравяйте да запазите теста си.
Отсега нататък, ако в моя тест има изявление, което е както следва, той ще извика функцията в библиотеката и ще изпълни стъпките там.
gmailLogin(“swatiseela”,”akihad989080890”)
В горното изявление предавате постоянни стойности на потребителско име и парола. Но ако решите, можете да предавате и стойностите от таблицата с данни.
gmailLogin(DataTable('SignInName', dtGlobalSheet), DataTable('GPassword', dtGlobalSheet))
Можете да имате повече от една функция във вашите библиотечни файлове и можете да имате повече от един библиотечен файл, свързан с вашия тест.
Заключение
Това завършва нашите библиотеки с функции и действия. Тези две теми са от решаващо значение за тестера, тъй като правят всичките ви тестове по-модулни и многократно използвани.
Следващата тема ще бъде нататък Хранилища на обекти (ИЛИ) . Ще обсъдим как да създаваме, свързваме и работим със споделени НОР и ИЛИ мениджъри.
=> Посетете тук за серията учебни уроци за QTP
Моля, не се колебайте да публикувате вашите въпроси и коментари.
Препоръчително четене
- Параметризиране в QTP (част 2) - Урок за QTP # 20
- Параметризиране в QTP, обяснено с примери (част 1) - Ръководство за QTP # 19
- QTP урок # 14 - Как да добавя растерни и текстови контролни точки в QTP тестове
- QTP уроци - 25+ Micro Focus Quick Test Professional (QTP) учебни уроци
- Урок за QTP # 18 - Управлявани от данни и хибридни рамки, обяснени с примери за QTP
- QTP урок # 24 - Използване на виртуални обекти и сценарии за възстановяване в QTP тестове
- QTP урок # 10 - Писане на контур и условни изявления - Основи на VB скрипт Част 2
- Урок за основната функция на Python с практически примери