作者:yu.shuijun[ZSK]
性能測試首選工具是loadrunner。然而,loadrunner在做接口測試時又不像web哪樣可以直接錄製腳本,可能就不知道怎麼做了。其實,loadrunner做http的接口性能也很簡單。在接到http接口的性能測試時,我們首先要了解這個接口是get類型的還是post類型的。然後我們分別來看看這兩個類型的接口的測試方法。
一、get類型的接口
get類型的接口,其請求參數是附加在url中的,直接用web_ur發送請求即可,如:
web_url("getname",
"URL=http://192.168.106.193/shop/business/QueryMdseDetailById.action?name=something&&password=something",
"Resource=0",
"RecContentType=text/html",
"Mode=HTML",
LAST);
以上接口就帶了2個參數,name 和password。參數和參數之間用&&連接。
將上面的代碼放到loadrunner的action中,在加上開始事務和結束事務。這個接口的測試腳本就完成了。
然後就像web測試一樣調試腳本,參數化,設置場景,對接口進行壓力測試了。
注意:代碼中的URL需要換成被測接口的URL。
二、post類型接口
post類型的接口,其參數是放在body裏面,可以使用web_submit_data、web_custom_request來發送請求。
1、web_submit_data格式:
web_submit_data("postname",
"Action=http://192.168.106.193/shop/business/QueryMdseDetailById.action",
"Method=POST",
"RecContentType=text/html",
"Mode=HTML",
ITEMDATA,
"Name=name","Value=something",ENDITEM,
"Name=password","Value=something",ENDITEM,
LAST);
上面的接口也帶了2個參數name和password,注意返回的結果類型RecContentType,如果返回的是json字符串,則RecContentType=application/json。
2、web_custom_request,格式如下:
web_custom_request("getTeacherClassList",
"URL=http://192.168.106.193/shop/business/QueryMdseDetailById.action",
"Method=POST",
"Resource=0",
"RecContentType=application/json",
"Referer=",
"Mode=HTTP",
"EncType=application/x-www-form-urlencoded",
//"Body=",
"Body={\"teacherId\":\"165\"}",
LAST);
這個接口帶了一個參數userId,返回的結果是json格式的字符串。將json放在body裏面,需要將引號進行轉義。
建議post接口使用web_custom_request來發送請求。