天天看點

【LoadRunner-Vuser Generator】腳本完善

腳本完善包括但不限于:

1、參數化

2、插入事務

3、插入檢查點

4、設定關聯

5、插入注釋

接下來逐個進行說明:

1、參數化:詳情請參考本站

2、插入事務:

【LoadRunner-Vuser Generator】腳本完善

 3、設定檢查點

檢查點用來判斷測試步驟是否被正确的執行。檢查點有兩種:文本檢查點和圖檔檢查點。這兩種檢查點推薦檢查函數:
web_reg_find():作用是在緩存中查找相應的内容,必須放在請求函數之前,常用參數及含義如下:
web_reg_find("Search=Body",  //定義查找範圍
"SaveCount=para_count",            //定義查找計數變量名稱
"Text=test",                 //定義查找内容
LAST);      
對上述檢查點的判斷校驗:
if(strcmp(lr_eval_string("{para_count}"),"0")==0)
  lr_end_transaction("事務名稱", LR_PASS);
else
  lr_end_transaction("事務名稱", LR_FAIL);      
web_image_check():作用:在頁面中查找一個具體的圖檔,必須放在請求函數之後,常用參數及含義如下:
web_image_check("web_image_check", //函數标題
"Alt=", //圖示說明
"Src=", //圖檔連結位址
LAST);
使用該函數注意以下事項:
“Alt”和“Src”的值直接取該圖檔在網頁源代碼中相應參數的值
該函數是在緩存中查找相應的内容,是以要放在查找内容之前
使用該函數時,同樣需要在Vuser->Run-Tme Settings中勾選Enable Image and text check

web_reg_save_param():作用:将請求的動态資料資訊儲存到一個參數,必須放在請求函數之前,常用參數及含義如下:
web_reg_save_param(“paraName", //存放得到的動态内容的參數名稱
  "LB=\"msg\":\"", //傳回資訊的左邊界字串。該屬性必須有,并且區分大小寫。
  "RB=,\"code\":200",//傳回資訊的右邊界字串。該屬性必須有,并且區分大小寫。
  "Search=Body", //傳回資訊的查找範圍。可以是Headers,Body,Noresource,All(預設)。該屬性質可有可無。
  LAST);      
對上述檢查點的判斷校驗:
if(strcmp(lr_eval_string("{paraName}"),"審批成功")==0)
  lr_end_transaction("事務名稱", LR_PASS);
else
  lr_end_transaction("事務名稱", LR_FAIL);      

4、設定關聯:

什麼情況下使用關聯?

如果錄制腳本的過程中,伺服器會傳回一個動态的、變化的值給用戶端時,那麼就需要對該值進行關聯,否則事務不可能正常地完成。 例如:錄制完成飛機訂票系統後,回放腳本報錯,原因就是登入時的原來錄制時的會話ID已經失效,需要重新擷取伺服器傳回的sessionID。這就需要對該值設定關聯,自動擷取伺服器端傳回的該值并儲存為參數使用。

關聯的原理:

LR是通過左右邊界值來查找伺服器傳回給用戶端的值,是以關聯最難的是如何查找待關聯的左右邊界值。

關聯函數:

新版本web_reg_save_param_ex ( const char *ParamName, [const char *LB, ][const char *RB,]<List of Arributes> ,SEARCH FILTERS ,LAST );

舊版本web_reg_save_param (const char *ParamName, <list of  Attributes>, LAST);

【LoadRunner-Vuser Generator】腳本完善

                 飛機訂票系統登入過程

如何設定關聯?

關聯方法包括自動關聯、手動關聯和一邊錄制一邊關聯。

自動關聯詳情請參考

手動關聯詳情請參考

5、插入注釋

【LoadRunner-Vuser Generator】腳本完善