loadrunner錄製指令碼和常見函式
一、如何錄製指令碼
1.建立指令碼
2.選擇常用協議
3.Start Record 開始錄製
(1)Application type 應用型別:瀏覽器、客戶端
(2)Program to record :預設為IE瀏覽器,如果錄製不成功,可能是ie瀏覽器的目錄不正確,此處是選擇ie瀏覽器的存放位置
(3)URL Address:目標網址
二、主要選單介紹
1.insert選單下包括設定事務的起始、設定集合點等
2.Vuser--Run-Time Settings..執行時設定
(1)HTTP-request connect timeout(sec) 120:http連線超過120s為超時
(2)HTTP-request receive timeout(sec) 120:http接收超過120s為超時
(3)HTTP-Keep-Alive timeout(sec) 60:保持連線超過60s為超時
注:如果日誌中有報錯超時,timeout error,說明超時,需到options裡修改時間
3.Tools---Recording Options...錄製指令碼時設定
(1)選擇HTML、URL方式錄製參考原則
基本瀏覽器的應用程式推薦使用HTML-based script
不是基於瀏覽器的應用程式推薦使用URL-based script
如果基本瀏覽器的應用程式中包含了JavaScript並且該指令碼向伺服器產生了請求,比如DataGrid的分頁按鈕等,也要使用URL-based script方式錄製
基於瀏覽器的應用程式中使用了HTTPS安全協議,使用URL-based script方式錄製
(2)錄製不到指令碼時,有可能是協議的問題,建議選擇萬能協議
(3)Advanced --UTF-8 :防止自己錄製的指令碼是亂碼設定字元型別
4.Tools--General Options 全域性設定
回放的設定:LR有內建的瀏覽器,設定在回放的時候呼叫LR自身的瀏覽器
三、函式
1.web_url:開啟一個網頁,或者一個http請求
2.lr_think_time(20):思考時間,單位是秒,表示停頓20秒,操作與操作的間隔時間,更加符合實際場景
3..web_submit_data 提交資料,一般錄製時為post方式
(1)該函式一般包括三部分:請求名、請求地址Action、請求引數(引數缺一不可)
4.web_submit_form 提交表單資料
5.web_add_cookie 新增cookie
6.web_custom_request
7.lr_output_message("var");輸出函式,引數可以是LR引數,c語言變數或者字串
lr_outout_message("你的名字是:%s",lr_eval_string("{test1}"));讀取值
lr_error_message();輸入錯誤的資訊
8.web_set_max_html_param_len("50000");設定html頁面最大引數長度
主要用於,訪問網頁結果報文特別多的時候,lr執行時會報錯,此時需要增加長度,才能執行(lr有一個最大位元組的限制,超出長度範圍會報錯)
9.web_reg_save_param 預註冊函式
10.web_reg_find:文字檢查點函式,在請求之前
四、終極優化
1.集合點:集合到某一個時間點同時出發,例如十點的秒殺活動,只能統一在十點的時候訪問進行購買
例如在購票前設定集合點,必須當所有使用者登入成功後,才能進行購票,同時購票的那一刻就是集合點
(1)設定集合點:Insert---Rendezvous...
2.事務:一個完整的有意義的操作,一個集合或者某一個操作
3.事務點,如登入作為一個事務,把登入指令碼的開始作為事務開始,結束作為事務結束
事務開始:lr_start_transaction("login");
事務結束:lr_end_transaction("login",LR_AUTO);
必須設定事務才能被lr監測到,比如事務響應時間、吞吐量等等