important loadrunner functions used vugen scripts with examples
Важне ЛоадРуннер функције које се углавном користе у ВуГен скриптама са синтаксом и примерима:
Изазови скриптирања ВуГен-а су детаљно објашњени у нашем ранијем водичу у Бесплатна онлајн серија обуке ЛоадРуннер .
Током нашег путовања са ЛоадРуннер ВуГен-ом, до сада смо наишли на многе унапред дефинисане функције (и наравно, такође смо видели како да напишемо сопствене функције).
У овом упутству ћемо навести и кратко разговарати о важним ‘унапред дефинисаним’ функцијама ЛоадРуннер, специфичним за протокол и Ц-језик које углавном користимо у ВуГен скриптама / сценаријима.
=> Кликните овде за комплетну серију водича за ЛоадРуннер
Класификујмо ове функције у три категорије:
- ЛоадРуннер (ЛР) функције
- Функције специфичне за протокол (Веб - ХТТП / ХТМЛ)
- Функције језика Ц.
Истражујмо један по један!
бесплатан алат за чишћење за Виндовс 10
Шта ћете научити:
- ЛоадРуннер (ЛР) функције
- Функције специфичне за протокол
- Ц Језичке функције
- Закључак
- Препоручено читање
ЛоадРуннер (ЛР) функције
Ове функције су опште ЛоадРуннер функције које су заједничке за све протоколе:
1) лр_евал_стринг (): Као што је већ виђено, ова функција враћа улазни низ након процене било којих уграђених параметара.
два) лр_евал_стринг_ект (): Ова функција креира међуспремник и додељује га улазном низу након процене уграђених параметара.
3) лр_саве_стринг (): Као што је већ виђено, ова функција додељује вредност параметру / променљивој ЛР.
4) лр_саве_инт (): Ова функција додељује цели број ЛР параметру као што је приказано доле:
Пример:
int number; number=8; lr_save_int(number,”numparam”);
Параметар „нумпарам“ се сада може користити као било који други ЛР параметар.
5) лр_парамарр_рандом (): Као што је већ виђено, ова функција насумично бира једну од вредности из низа параметара.
6) лр_парамарр_лен (): Ова функција враћа број елемената у низу параметара.
Претпоставимо да је „цФлигхт“ низ параметара који има вредности лета, пример у наставку показује како се број елемената овог низа може копирати у променљиву.
Пример:
int arrLen; arrLen = lr_paramarr_len('cFlight');
7) лр_парамарр_идк (): Ова функција даје вредност параметра на одређеној локацији у низу параметара. Пример приказан у наставку чува трећу вредност низа параметара у променљивој.
Пример:
char * flightVal; flightVal = lr_paramarr_idx('cFlight', 3);
8) лр_дб_цоннецт () : Ово је функција базе података која се користи за повезивање са базом података.
9) лр_дб_дисцоннецт () : Ово је функција базе података која се користи за прекид везе са базом података.
10) лр_старт_трансацтион () и лр_енд_трансацтион (): Као што је већ виђено, ове функције се користе за започињање и завршавање (односно) трансакције.
Једанаест) лр_мессаге () : Ово је функција поруке која се користи за слање порука у дневник и излазни прозор.
12) лр_оутпут_мессаге (): Ово је функција поруке која се користи за слање порука (а) са детаљима као што су одељак скрипте и број редака за излаз прозора, датотека дневника и осталих сажетака извештаја о тестирању.
13) лр_лог_мессаге () : Ово је функција поруке која се користи за слање порука у датотеку евиденције Вусер или агента, а не у излазни прозор.
14) лр_еррор_мессаге (): Ово је функција поруке која се користи за слање порука у излазне прозоре, датотеке дневника и остале сажетке извештаја о тестирању.
петнаест) лр_саве_датетиме (): Ова функција чува тренутни датум и време (или датум и време са наведеним одмаком) у параметар који се може користити у нашој скрипти по потреби.
Пример:
lr_save_datetime('Today’s date is %B %d %Y', DATE_NOW , 'today'); lr_output_message(lr_eval_string('{today}'));
Ацтион.ц (4): Данашњи датум је 09. јун 2018
Доље је дат још један пример где се користи помак од једног дана:
lr_save_datetime('Tomorrow's date is %B %d %Y', DATE_NOW + ONE_DAY , 'tomorrow'); lr_output_message(lr_eval_string('{tomorrow}'));
Ацтион.ц (4): Сутрашњи датум је 10. јун 2018
16) лр_сет_дебуг_мессаге (): Ова функција мења ниво евидентирања порука (за део скрипте) од оног који је подешен у поставкама Рун-Тиме. Као што је приказано у наставку, пуни траг је омогућен само за захтев „индек.хтм“ (чак и ако је ниво евиденције постављен на „Стандардни дневник“ у подешавањима времена извођења).
Пример:
lr_set_debug_message( LR_MSG_CLASS_EXTENDED_LOG | LR_MSG_CLASS_FULL_TRACE , LR_SWITCH_ON ); web_url('index.htm', 'URL= http://127.0.0.1:1080/WebTours/index.htm ', 'TargetFrame=', 'Resource= 0 ', 'RecContentType= text/html ', 'Referer=', 'Snapshot= t8.inf ', 'Mode= HTML ', LAST ); lr_set_debug_message( LR_MSG_CLASS_EXTENDED_LOG | LR_MSG_CLASS_FULL_TRACE , LR_SWITCH_OFF );
17) лр_аборт (): Ова функција прекида извршење скрипте након извршавања одељка „вусер_енд“. Ова функција је корисна када морамо ручно да прекинемо скрипту због одређеног стања грешке.
18) лр_екит (): Ова функција упућује Вусера да изађе из скрипте која се покреће током извршавања и настави према наведеним „Опцијама за наставак скрипте“.
У следећем Примеру, ова функција упућује Вусера да заустави тренутну итерацију покретања глобалне скрипте и започне следећу итерацију.
lr_exit(LR_EXIT_MAIN_ITERATION_AND_CONTINUE, LR_AUTO);
Ево листе других опција за наставак скрипте:
- ЛР_ЕКСИТ_ВУСЕР - Изађите без икаквог услова и идите директно на вусер_енд ацтион.
- ЛР_ЕКСИТ_АЦТИОН_АНД_ЦОНТИНУЕ - Зауставите тренутну акцију и пређите на следећу акцију.
- ЛР_ЕКСИТ_ИТЕРАТИОН_АНД_ЦОНТИНУЕ - Зауставите тренутну итерацију и пређите на следећу итерацију.
- ЛР_ЕКСИТ_ВУСЕР_АФТЕР_ИТЕРАТИОН - Излаз након завршетка текућег понављања.
- ЛР_ЕКСИТ_ВУСЕР_АФТЕР_АЦТИОН - Излаз након завршетка тренутне радње.
19) лр_тхинк_тиме (): Ова функција омогућава Вусеру да паузира одређено време између корака / радњи на ВуГен скрипти. Ово је симулирање стварног понашања корисника током одређеног времена између радњи / корака у апликацији.
На пример, следеће наводи да Вусер чека 10 секунди ...
lr_think_time(10);
двадесет) лр_рендезвоус (): Као што је већ виђено, ова функција наређује ЛоадРуннер-у да сачека у одређеном кораку у скрипти док сви Вусерови не дођу до тог корака како би се наредни захтев могао извршити истовремено.
двадесет један) лр_лоад_длл (): Ова функција се користи за учитавање екстерне длл датотеке, омогућавајући Вусеру да позове спољну функцију приликом поновне репродукције скрипте.
22) лр_саве_сеарцхед_стринг (): Ова функција тражи појаву низа у међуспремнику и спрема дио бафера након тог низа у параметар.
У следећем Примеру , трећа појава (број дефинисан у трећем атрибуту плус 1) низа „алл“ претражује се у баферу, а следећих 14 знакова (шести атрибут) се чувају у параметру (пети атрибут „1“ прескаче размак након претраживања ).
char cBuffer() = 'all the King's horses and all the King's elephants and all the King's men'; lr_save_searched_string(cBuffer, strlen (cBuffer),2,'all',1,14,'parameter'); lr_output_message('The searched sub-string is %s',lr_eval_string('{parameter}'));
Ацтион.ц (7): Претражени подниз су Краљеви људи.
2. 3) лр_вусер_статус_мессаге (): Ова функција шаље поруку у подручје статуса Вусер контролера и у Вусер дневник.
24) лр_нект_ров (): Ова функција ради на датој датотеци података параметара и користи се за прелазак активног реда у следећи ред.
25) лр_адванце_парам (): Ова функција омогућава скрипти да користи следећу доступну вредност параметра радећи на именима колона.
26) лр_старт_тимер () и лр_енд_тимер (): Ове функције се користе за покретање и заустављање тајмера у ВуГен скрипти који израчунава проток времена у секундама.
27) лр_вхоами (): Ова функција враћа информације о Вусеру (попут Вусер ид, Вусер група).
28) лр_гет_вусер_ип (): Ова функција враћа ИПв4 адресу Вусера.
29) лр_гет_хост_наме (): Ова функција враћа име машине која извршава скрипту.
30) лр_гет_мастер_хост_наме (): Ова функција враћа име машине која покреће контролер.
31) лр_децрипт (): Ова функција дешифрује кодирани низ. Обично се користи за дешифровање лозинки.
32) лр_цонтинуе_он_еррор (): Ова функција одређује како се рукује грешкама да би се наставило изводити ако се догоди грешка или да се прекине извршавање скрипте.
***********************************
У овом одељку детаљно смо разговарали о „унапред дефинисаним“ функцијама и функцијама „ЛоадРуннер“.
У нашем следећем одељку говорићемо о функцијама ЛоадРуннер „Специфиц Протоцол“ и „Ц-Лангуаге“.
Функције специфичне за протокол
Ове функције су специфичне за протокол, у нашој расправи ограничићемо се на расправу о протоколу „Веб-ХТТП / ХТМЛ“ или једноставно о функцијама специфичним за „веб“.
1) веб_урл (): Ова функција учитава веб страницу наведену аргументом УРЛ.
два) веб_субмит_форм (): Ова функција предаје образац. А ова функција се снима само у ХТМЛ режиму и предаје захтев осетљив на контекст (већ смо говорили о осетљивим на контекст и захтеве без контекста).
Погледајте пример испод:
web_submit_form('login.pl', 'Snapshot= t2.inf ', ITEMDATA , 'Name= username ', 'Value= jojo ', ENDITEM , 'Name= password ', 'Value= bean ', ENDITEM , 'Name= login.x ', 'Value= 51 ', ENDITEM , 'Name= login.y ', 'Value= 13 ', ENDITEM , LAST );
3) веб_субмит_дата (): Ова функција предаје образац „без контекста“. Ова функција се снима само у режиму снимања заснованом на УРЛ-у или у режиму снимања заснованом на ХТМЛ-у са означеном опцијом „Скрипта која садржи само експлицитне УРЛ-ове“.
Погледајте пример испод:
web_submit_data('login.pl', 'Action= http://127.0.0.1:1080/cgi-bin/login.pl ', 'Method= POST ', 'RecContentType= text/html ', 'Referer=http://127.0.0.1:1080/cgi-bin/nav.pl?in= home ', 'Snapshot= t12.inf ', 'Mode= HTTP ', ITEMDATA , 'Name= userSession ', 'Value= 123342.854353989zDttttipAHAiDDDDDiAzzpziitcf ', ENDITEM , 'Name= username ', 'Value= jojo ', ENDITEM , 'Name= password ', 'Value= bean ', ENDITEM , 'Name= JSFormSubmit ', 'Value= off ', ENDITEM , 'Name= login.x ', 'Value= 51 ', ENDITEM , 'Name= login.y ', 'Value= 13 ', ENDITEM)
4) веб_цустом_рекуест (): Ова функција се користи за креирање прилагођеног ХТТП захтева помоћу било које методе или тела.
5) веб_цонцуррент_старт () и веб_цонцуррент_енд (): Ове функције се користе за обележавање почетка и краја (односно) истовремене групе. Све функције унутар групе (затворене између ових функција) извршавају се истовремено.
6) веб_рег_саве_парам (): Као што је већ виђено, ово је корелациона функција заснована на границама.
7) веб_рег_саве_парам_ек (): Ово је такође функција корелације заснована на границама која је побољшана верзија функције веб_рег_саве_парам.
8) веб_рег_финд (): Као што је већ виђено, ова функција се користи за проверу текста.
9) веб_имаге_цхецк (): Као што је већ виђено, ова функција се користи за проверу слике.
10) веб_цонверт_парам (): Ова функција се користи за претварање ХТМЛ текста у обичан текст или УРЛ или обични текст у УРЛ. У доњем примеру, ове функције претварају садржај параметра „ПарамНаме“ из ХТМЛ формата у УРЛ формат.
Пример:
веб_цонверт_парам („ПарамНаме“, „СоурцеЕнцодинг = ХТМЛ“, „ТаргетЕнцодинг = УРЛ“, ПОСЛЕДЊЕ);
Једанаест) веб_гет_инт_проперти (): Ова функција враћа одређене информације (попут статусног кода, величине преузимања итд.) О претходном ХТТП захтеву. У доленаведеном примеру, ова функција се користи за враћање ХТТП статусног кода и величину преузимања.
Пример:
int statusCode, downloadSize; web_url('index.htm', 'URL= http://127.0.0.1:1080/WebTours/index.htm ', 'Resource= 0 ', 'RecContentType= text/html ', 'Referer=', 'Snapshot= t1.inf ', 'Mode= HTML ', EXTRARES , 'Url= ../favicon.ico ', 'Referer=', ENDITEM , 'Url= https://www.bing.com/favicon.ico ', 'Referer=', ENDITEM , LAST ); statusCode = web_get_int_property( HTTP_INFO_RETURN_CODE ); lr_output_message('The HTTP status code is %d',statusCode); downloadSize = web_get_int_property( HTTP_INFO_DOWNLOAD_SIZE ); lr_output_message('The download size is %d bytes',downloadSize);
Ацтион.ц (17): покренуто веб_гет_инт_проперти (МсгИд: ММСГ-26355)
Ацтион.ц (17): веб_гет_инт_проперти је успео (МсгИд: ММСГ-26392)
Ацтион.ц (18): ХТТП статусни код је 200
Ацтион.ц (20): покренуто веб_гет_инт_проперти (МсгИд: ММСГ-26355)
Ацтион.ц (20): веб_гет_инт_проперти је успео (МсгИд: ММСГ-26392)
Ацтион.ц (21): Величина преузимања је 12891 бајтова
12) веб_сет_мак_хтмл_парам_лен (): Ова функција се користи за постављање максималне дужине било којег ХТМЛ низа који се може преузети и сачувати у параметру. Подразумевана вредност за максималну дужину параметра који се може забележити током корелације је 256 знакова. Ова функција се користи за преузимање низа дужег од 256 знакова.
13) веб_цацхе_цлеануп (): Ова функција се користи за брисање кеш меморије. У подешавањима рунтиме-картице Емулација прегледача, ако је омогућена опција ‘Симулирај новог корисника у свакој итерацији’, тада се ова функција аутоматски позива на почетку сваке итерације.
14) веб_цлеануп_цоокиес (): Ова функција брише све колачиће које Вусер тренутно чува.
петнаест) веб_адд_цоокие (): Ова функција додаје нови колачић.
16) веб_адд_хеадер (): Ова функција додаје кориснички дефинисано заглавље следећем ХТТП захтеву.
17) веб_саве_тиместамп_парам (): Ова функција спрема тренутну локалну временску ознаку рачунара на којем се извршава скрипта. Ово је 13-цифрени број, а вредност је број милисекунди од поноћи 1. јануара 1970.
Пример:
web_save_timestamp_param('currentTimeStamp', LAST ); lr_output_message(lr_eval_string('Timestamp: {currentTimeStamp}'));
Ацтион.ц (5): Временска ознака: 1529249235582
18) веб_сет_усер (): Ова функција одређује вредност за пријаву и лозинку за веб сервер или прокси сервер. Када се пријавимо на сервер који захтева корисничко име и лозинку, ова функција се генерише.
19) веб_сет_проки (): Ова функција се користи за упућивање Вусера да усмери све ХТТП захтеве према наведеном Прокси сервер .
двадесет) веб_сет_цертифицате (): Ова функција се користи за упућивање Вусера да користи одређени сертификат из регистра Интернет Екплорер-а (кад год безбедни веб сервер захтева од клијента да представи сертификат).
На пример, следећа функција налаже Вусеру да користи други сертификат из регистра Интернет Екплорер-а.
web_set_certificate('2');
двадесет један) веб_сет_соцкетс_оптион (): Ова функција се користи за конфигурисање различитих опција за утичнице на клијентском рачунару.
ССЛ_ВЕРСИОН - ССЛ верзија: „2“, „3“, „2 и 3“, „ТЛС“, „ТЛС1.1“ или „ТЛС1.2“.
МАКС_ЦОННЕЦТИОНС_ПЕР_ХОСТ - максималан број истовремених веза по хосту.
ЦЛОСЕ_КЕЕПАЛИВЕ_ЦОННЕЦТИОНС - Затвара све отворене везе.
Ц Језичке функције
То су функције „Ц“ које се користе за побољшање ВуГен скрипти за одређене сценарије.
1) стрцпи (): Ова функција копира један низ у други.
Пример:
char String(100); strcpy (String,'This is a string'); lr_output_message('The content in String is : %s', String);
Ацтион.ц (8): Садржај у низу је: Ово је низ
два) стрцмп (): Ова функција упоређује два низа и враћа вредност која указује на лексикографску везу између њих (’= 0’ ако су низови исти, ‘0’ ако је први низ већи од другог низа).
Пример:
char String1(100)= 'The first string'; char String2(100)= 'The second string'; if( strcmp (String1,String2)==0) { lr_output_message('Strings are same'); } else { lr_output_message('Strings are not same'); }
Ацтион.ц (14): Жице нису исте.
како се користи торрент датотека
3) стрлен (): Ова функција враћа дужину низа у бајтовима.
4) стрцат (): Ова функција спаја два низа.
Пример:
char String(100)= 'Star'; strcat (String,'Wars'); lr_output_message('The final string is: %s',String);
Ацтион.ц (10): Последњи низ је СтарВарс.
5) стрток (): Као што је већ виђено, ова функција враћа жетон из низа ограниченог наведеним знаковима.
6) атои (): Као што је већ виђено, ова функција претвара Ц низ у Ц цели број.
7) атоф (): Ова функција претвара Ц низ у Ц пловак.
8) итоа (): Ова функција претвара Ц цели број у Ц низ.
Пример:
int x=1; char y(100); itoa (x,y,10); lr_output_message('The string is: %s',y);
Ацтион.ц (8): Низ је: 1
9) фопен (): Ова функција се користи за отварање показивача датотеке.
10) фцлосе (): Ова функција се користи за затварање показивача датотеке.
Једанаест) фреад (): Ова функција чита неформатиране податке из тока у међуспремник.
12) фврите (): Ова функција записује неформатиране податке из међуспремника у ток.
13) фпринтф (): Као што је већ виђено, ова функција записује форматирани излаз у датотеку.
14) спринт (): Ова функција записује форматирани излаз у низ.
Пример:
int arg = 84; char filename(64), * filetype = 'txt'; sprintf (filename, 'log_%d.%s', arg, filetype); lr_output_message ('The new file name is %s', filename);
Ацтион.ц (7): Ново име датотеке је лог_84.ткт
Закључак
Из овог водича сазнали смо више о важним унапред дефинисаним функцијама ЛоадРуннер.
Ове функције брину о готово свим важним сценаријима на које обично наилазимо у апликацијама у реалном времену. Саветује се да погледате „Референцу функција“ у помоћи за ВуГен за додатне детаље о овим функцијама.
У нашем предстојећем водичу сазнаћете више о скриптирању веб услуга помоћу ЛоадРуннера.
=> Посетите овде за комплетну серију водича за ЛоадРуннер
ПРЕВ Туториал |. | СЛЕДЕЋА Лекција
Препоручено читање
- Тестирање перформанси веб услуга помоћу ЛоадРуннер ВуГен скриптирања
- Функције датума и времена у Ц ++ са примерима
- Питхон ДатеТиме Водич са примерима
- Функције у Ц ++ са типовима и примерима
- Испитивање оптерећења помоћу ХП ЛоадРуннер водича
- Питхон функције
- Питхон стринг функције
- ВУГен опције снимања у ЛоадРуннер-у