lr采用c的語法,有區(qū)別
? ?//定義c 變量 :c變量需全部放置前面
?? char? *p? ? ? ? ? ? “usrname”;
?? char var[10]? ? ? ? ? ? ? “123”;
?? int count? ? ? ? ? ? 10
?? lr_log_message("p is %s",p);
?? lr_log_message("count is %d", count);
轉(zhuǎn)換函數(shù)
?? 參數(shù)轉(zhuǎn)變量
?? lr_save_string(p,"username") //Saves a null terminated string as a parameter.將c字符串賦值變量p保存為lr的變量usename
?? lr_eval_string("{username}") //Returns the string argument after evaluating embedded parameters.將lr參數(shù)username值返回成c可用的字符串參數(shù)
.
字符串常用函數(shù)
char *p;? 單個(gè)字符串
char var[10]; 長度問題
字符串操作: copy cat? strcmp strlen
strcpy(var,lr_eval_string("{param}")); 賦值
strcat(var,lr_eval_string("{param}")); 拼接
?? strcmp? (lr_eval_string("{param}"),"str"):將兩
個(gè)字符串類型的變量進(jìn)行比較,如果相等,返回0,
否則,返回1或-1
memset(test,0,sizeof(test)); //字符串清空函數(shù)
--------------------------------------
?? if(strcmp(lr_eval_string("{mysessiontest}"),“”)==0)
{
lr_log_message("yes");
?? ? }else{
?? ? ? lr_log_message("no");
?? ? }
---------------------------
int size;
size = lr_paramarr_len("param_arry"):獲取參數(shù)數(shù)組param_arry的長度,并保存到C語言的變量size里
字符串清空
memset(str,0,sizeof(str));
==============字符串例子==============
Action()
{??
?char test[20];?
?char *p;??
?strcat(test,"admin");? ??
strcat(test,"pwd");? ??
strcat(test,"0710");
?lr_log_message("test is %s",test);?
web_reg_save_param("mysessiontest","LB=userSession value=","RB=>",LAST);
web_url("WebTours", "URL=http://127.0.0.1:1080/WebTours/", "TargetFrame=", "Resource=0", "RecContentType=text/html", "Referer=", "Snapshot=t1.inf", "Mode=HTML", LAST);?
?lr_log_message("mysession is %s",lr_eval_string("{mysessiontest}"));? ?
?lr_log_message("test is %s",test);? lr_log_message("test sizeis %d",strlen(test));? ?
?lr_log_message("mysession sizeis %d",
strlen(lr_eval_string("{mysessiontest}")));? ?
?if(strcmp(lr_eval_string("{mysessiontest}"),test)==0){? ? ? ? ?
?lr_log_message("yes");? ?
?}else{? ? ?
?lr_log_message("no");??
? }
web_reg_find("Text=Welcome,admin1",
LAST);
lr_think_time(26);
web_submit_data("login.pl",
"Action=http://127.0.0.1:1080/WebTours/login.pl",
"Method=POST",
"TargetFrame=body",
"RecContentType=text/html",
"Referer=http://127.0.0.1:1080/WebTours/nav.pl?in=home",
"Snapshot=t2.inf",
"Mode=HTML",
ITEMDATA,
"Name=userSession", "Value={mysessiontest}", ENDITEM,
"Name=username", "Value=admin1", ENDITEM,
"Name=password", "Value=admin1", ENDITEM,
"Name=JSFormSubmit", "Value=off", ENDITEM,
"Name=login.x", "Value=55", ENDITEM,
"Name=login.y", "Value=4", ENDITEM,
LAST);
return 0;
}
整數(shù)比較函數(shù)
?? atoi(lr_eval_string("{param}")):將LR參數(shù){param}轉(zhuǎn)換為 數(shù)字
?? //驗(yàn)證是否找到了頁面上的要檢查的字符串
?? if (atoi(lr_eval_string("{para_count}"))>0) {
?? ? ? lr_output_message("login success!");
?? }
?? else{
?? ? lr_output_message("login error");
?? }
數(shù)組應(yīng)用
web_reg_save_param("JSESSIONID2", ?//JSESSIONID2存儲(chǔ)數(shù)據(jù)若有多個(gè)則以數(shù)組形式保存
"LB/IC=jsessionid=",
"RB/IC=\"",
"Ord=ALL",
"Search=body",
"NotFound=WARNING",
LAST);
lr_paramarr_random("param_arry"):從參數(shù)數(shù)組param_arry中隨機(jī)取一個(gè)值
int size;
size = lr_paramarr_len("param_arry"):獲取參數(shù)數(shù)組param_arry的長度,并保存到C語言的變量size里
char *v;
value = lr_paramarr_idx("param_arry",1):獲取參數(shù)數(shù)組param_arry中第1個(gè)值,并保存到C語言的變量value里
for 循環(huán)數(shù)組使用,
for(i=1;i<size;i++){
lr_log_message("param_arry is ",lr_paramarr_idx("param_arry",i))
}
==============例子=============
web_reg_save_param("mysession",
"LB=userSession value=",
"RB=>",
LAST);
lr_log_message("mysession is %s",lr_eval_string("{mysession}"));
lr_eval_string("{mysession}") 讀取lr函數(shù)的參數(shù)