一、需求
使用Loadrunner壓測目標接口,要求支持1000並發數。
目標接口:https://www.xxx.com/digitaldata/api/signer/1.0/signerRegist
返回結果:結果返回中code的值為1則為保存成功,為4001則為參數異常,為0時則是保存異常。
執行設備:Win10(教育版),Loadrunner11破解中文版
二、 概述
使用Loadrunner進行壓力測試一般分為3步,第一是創建/編輯腳本,第二是運行負載測試,第三是分析測試結果。
三、 創建/編輯腳本
點擊“創建/編輯腳本”,打開HP Virtual User Generator窗口。點擊“新建腳本”或者打開已有的腳本
選擇協議類型,這里選擇Web(HTTP/HTML)類型,新建一個腳本。
點擊“創建”后,會出現錄制的對話框。因我們是提交請求給接口,再接受返回值即可。因此無需錄制,我們手動添加腳本即可。
接下來我們在Action里面添加腳本,內容為:
Action() { web_reg_save_param("return_code", "LB=\"code\":", "RB=,", LAST); lr_start_transaction("發送請求事務"); web_submit_data("web_submit_data", "Action=https://www.xxxx.com/digitaldata/api/signer/1.0/signerRegist", "Method=POST", "TargetFrame=", "Referer=", "RecContentType=application/json", ITEMDATA, "Name=signerName", "Value=xx", ENDITEM, "Name=signerType", "Value=個人", ENDITEM, "Name=country", "Value=cn", ENDITEM, "Name=organization", "Value=xxx", ENDITEM, "Name=organizationUnit", "Value=xxx", ENDITEM, "Name=signerIDType", "Value=身份證", ENDITEM, "Name=signerIDNo", "Value=xxx", ENDITEM, LAST); lr_end_transaction("發送請求事務", LR_AUTO); if (atoi(lr_eval_string("{return_code}"))==1){ lr_output_message("操作成功"); } else{ lr_output_message(lr_eval_string("{return_code}")); } return 0; }
腳本的簡單解釋:
web_reg_save_param:主要是獲取返回值中某些符合規則的值。
lr_start_transaction("發送請求事務"):是添加一條名為“發送請求事務”名稱的事務,便於統計,與lr_end_transaction("發送請求事務", LR_AUTO); 配合使用。
web_submit_data:向接口提交數據,格式類似於鍵值對。
【注:如需在某個時間點達到1000的並發,需要設置集合點】
腳本編寫完成后進行保存,保存后點擊“運行”。
我們在條件判斷中設定了如果返回值為1,則顯示操作成功。由圖可知,結果顯示為操作成功,則說明我們編寫的腳本正確且接口返回了正確的值。
四、 設置場景運行負載測試
點擊“運行負載測試”,在彈出的頁面選擇可用腳本,如果沒有則點擊文件夾圖標打開已有的腳本。
設置場景計划,雙擊全局計划中的操作可進行設置,雙擊“啟動Vuser”來設置虛擬用戶的總數。同理設置“停止Vuser”。
另外還需要設置Load Generator為localhost,不然會報錯執行不了,報錯為提示你 腳本是否可以執行
點擊運行即可開始設置的場景,運行的過程可在運行的tab頁中查看。
五、 查看分析結果
在運行界面的結果菜單中點擊,結果——分析結果,可自動生成分析結果。
點擊頁面中的“報告”——“報告模板”——生成報告可生成一定模板的壓測報告。