采用Loadrunner&Jmeter发送Get&Post请求技巧
一、 Get请求
不带参数
(1) Loadrunner脚本
Action()
{
web_custom_request("get请求",
"URL=http://localhost:8080/ReceiveGetPost/MyServlet",【Get URL地址】
"Method=GET",
"Resource=0",
"Referer=",
"Mode=HTTP",
"EncType=text/html; charset=UTF-8",
"Body=",
LAST);
return 0;
}
带参数
(1) 非参数化的Loadrunner脚本
Action()
{
web_custom_request("get请求",
" URL=http://localhost:8080/ReceiveGetPost/MyServlet?name=xuyj&id=123456",【Get URL地址】
"Method=GET",
"Resource=0",
"Referer=",
"Mode=HTTP",
"EncType=text/html; charset=UTF-8",
"Body=",
LAST);
return 0;
}
以上发送请求的方式与不带参数的Get请求发送方式一致。
(2) 参数化的Loadrunner脚本
Action()
{
web_custom_request("get请求",
"URL=http://localhost:8080/ReceiveGetPost/MyServlet?name=xuyj&id={NewParam}",【Get URL地址】
"Method=GET", 【id 参数化】
"Resource=0",
"Referer=",
"Mode=HTTP",
"EncType=text/html; charset=UTF-8",
"Body=",
LAST);
return 0;
}
二、 Post请求
Body参数非独立
(1) Loadrunner脚本
Action()
{
web_custom_request("post测试", //名称
"Method=POST", //请求的方法
"URL=http://localhost:8080/ReceiveGetPost/MyServlet",//请求地址
"RecContentType=application/octet-stream", //指定相应头的Content-Type
"EncType=application/octet-stream", //指定请求头的Content-Type
"Mode=HTML",
RAW_BODY_START, //请求BODY开始的标识符
"{\"userIds\":[1300000001,1300002029,1300003163],\"type\":0}", //BODY的内容
55, //上面一行BODY内容的长度
RAW_BODY_END, //请求BODY结束的标识符
LAST);
return 0;
}
计算BODY内容的长度的方法:
- 在Firefox上装好firebug这个插件
- 打开Firefox,然后打开控制台
- 在控制台里面输入BODY内容,然后用length属性来获取该字符串的长度,如果对于上面这个例子,就是|| “{\"userIds\":[1300000001,1300002029,1300003163],\"type\":0}”.length ||,这样就能计算出结果“55”
详情可查看网址http://magustest.com/blog/loadtest/json-format-request-using-loadrunner/
解析:Post请求中的Body内容作为一个整体,发送给接收方,参数不独立。其中参数userIds和type在Loadrunner中不可参数化。
(2) 发送请求
其发送方式与不带参数的Get请求发送方式相同。
Body参数独立
(1) Jmeter添加Post请求
Post请求的Body中分别有userIds和type两个独立参数
(2) 发送请求
在Jmeter线程组中配置发送方式和发送次数
线程数:相当于用户数
ramp-up period:用于告知Jmeter要在多长时间内建立全部的线程。默认值是0。如果未指定ramp-up period,也就是说ramp-up period为零,Jmeter将立即建立所有线程,假设ramp-up period设置成T秒,线程数设置成N个,Jmeter将每隔T/N秒建立一个线程。
点击“运行”,开始执行:
Body带音频/视频等附属文件
Jmeter添加音频/视频文件

浙公网安备 33010602011771号