loadrunner 關聯匹配多個值


loadrunner 關聯獲取從服務器返回相關值,如果需要把所有匹配的值都獲取並且把這些值打印出來,怎么做呢?

1、首先要把把所有的匹配值都保存起來,需要在關聯函數里面多傳遞一個參數:"Ordinal=All", 意思就是把所有的順序值都取出來。如想把服務器返回的值的所有class= 后面的值都獲取出來

<div class="inside">
<div class="submitbox" id="submitpost">

如下三種關聯函數都追加了Ordinal=All,都可以獲取,只要選其中的一個就可以

web_reg_save_param("class_ex","LB=class=\"","RB=\"","Ordinal=All",LAST);
web_reg_save_param_regexp("ParamName=class_ex","RegExp=class=\"(.*?)\"","Ordinal=All", LAST);
web_reg_save_param_ex("ParamName=class_ex","LB/IC=class=\"","RB/IC=\"","Ordinal=All",LAST);

2、把這些獲取的參數打印出來,從關聯函數可以看出,保存的參數名稱為:class_ex,用lr_message 行數打印代碼為:

for(i=1;i<=atoi(lr_eval_string("{class_ex_count}"));i++){
    sprintf(param_index, "{class_ex_%d}", i);
    lr_message("class %d:%s",i,lr_eval_string(param_index));

}

代碼中 變量i需要在lr腳本最上面聲明一下,否則報錯

Action()
{
int i = 0;
char param_index[64];

...
}
atoi(lr_eval_string("{class_ex_count}")) 作用是獲取匹配了多少個參數
sprintf(param_index, "{class_ex_%d}", i);是格式輸出,並把格式中的值保存在變量param_index中,實際param_index 保存的值分別為:class_ex_1、class_ex_2 等等
最后lr_message 逐個打印出變量值

如下二維碼為專注自動化測試技術公眾號:為測,請掃二維碼關注

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM