图解jmeter压测http接口
2016-07-14 09:56
393 查看
此次压力测试是以一个http json的后台接口为例。
![](https://images2015.cnblogs.com/blog/127449/201607/127449-20160714095454623-1093776989.png)
![](https://images2015.cnblogs.com/blog/127449/201607/127449-20160714095457357-1324483886.png)
线程组主要用于设置一共要测试的线程数量(上图1000),每秒起的线程数(上图10),几秒内启动完单循环内要跑的线程(上例子中为10秒内启动1000个线程,即通常所说的100并发),一共测试多少个循环(上图永远)。
![](https://images2015.cnblogs.com/blog/127449/201607/127449-20160714095500795-1432885686.png)
http请求主要用于设置 被测试服务器的 ip地址 端口 服务地址 请求体数据。
![](https://images2015.cnblogs.com/blog/127449/201607/127449-20160714095502014-698248065.png)
http信息头管理器,主要用于设置http头字段信息,比如Content-Type。
![](https://images2015.cnblogs.com/blog/127449/201607/127449-20160714095504279-1017325855.png)
聚合报告 主要用于测试结果查看。
Error 表示请求失败的百分比,比如请求500或者404都算error。通常需要跑12-24小时。
Througghput表示吞吐量,通常按上图线程组的参数设置,需要达到的指标是200/s
![](https://images2015.cnblogs.com/blog/127449/201612/127449-20161230143944132-1913631840.png)
然后点击右下的添加参数,添加一个参数 比如参数名是q
点击右下的添加用户, 如果你需要10个报文就添加10个参数,每个用户下填写对应的不同的要测试的报文值….
![](https://images2015.cnblogs.com/blog/127449/201612/127449-20161230143945445-354079237.png)
在http请求的body data 页签上写上${q} 就可以达到目的了。
![](https://images2015.cnblogs.com/blog/127449/201612/127449-20161230143946398-706361035.png)
如果你http header中字段有同样的述求也可以这样玩,一样的,用${自定义的用户变量名}
1. 创建相应的部件
![](https://images2015.cnblogs.com/blog/127449/201607/127449-20160714095454623-1093776989.png)
2. 设置相应的参数
![](https://images2015.cnblogs.com/blog/127449/201607/127449-20160714095457357-1324483886.png)
线程组主要用于设置一共要测试的线程数量(上图1000),每秒起的线程数(上图10),几秒内启动完单循环内要跑的线程(上例子中为10秒内启动1000个线程,即通常所说的100并发),一共测试多少个循环(上图永远)。
![](https://images2015.cnblogs.com/blog/127449/201607/127449-20160714095500795-1432885686.png)
http请求主要用于设置 被测试服务器的 ip地址 端口 服务地址 请求体数据。
![](https://images2015.cnblogs.com/blog/127449/201607/127449-20160714095502014-698248065.png)
http信息头管理器,主要用于设置http头字段信息,比如Content-Type。
![](https://images2015.cnblogs.com/blog/127449/201607/127449-20160714095504279-1017325855.png)
聚合报告 主要用于测试结果查看。
Error 表示请求失败的百分比,比如请求500或者404都算error。通常需要跑12-24小时。
Througghput表示吞吐量,通常按上图线程组的参数设置,需要达到的指标是200/s
3. 其他
压力测试不仅能评估性能指标,还能验证程序的稳定性。比如db连接未关闭,文件句柄未关闭,并发未处理好等,这些问题上压力测试一压,在大量请求的考验下,基本上很快就能暴露出问题4. 指定多个请求参数
上面的示例是多次压测请求都是一个参数。在某些时候我们需要不同的参数。 比如我10个线程并发,我需要这10个线程使用不同的10个报文。此时需要使用前置处理器用户参数。![](https://images2015.cnblogs.com/blog/127449/201612/127449-20161230143944132-1913631840.png)
然后点击右下的添加参数,添加一个参数 比如参数名是q
点击右下的添加用户, 如果你需要10个报文就添加10个参数,每个用户下填写对应的不同的要测试的报文值….
![](https://images2015.cnblogs.com/blog/127449/201612/127449-20161230143945445-354079237.png)
在http请求的body data 页签上写上${q} 就可以达到目的了。
![](https://images2015.cnblogs.com/blog/127449/201612/127449-20161230143946398-706361035.png)
如果你http header中字段有同样的述求也可以这样玩,一样的,用${自定义的用户变量名}
相关文章推荐
- 常见的HTTP错误码的具体含义
- 安卓 java有效判断Socket连接断开和安卓TCP测试APP(客户+服务端一体)
- android——判断当前网络是否可用
- iOS开发 - 第04篇 - 网络 - 05 - ASI & 网页开发
- What is the difference between HTTP_CLIENT_IP and HTTP_X_FORWARDED_FOR
- java网络编程之一
- java网络编程之一
- java网络编程之一
- java网络编程之一
- 每日安全简讯20160714
- 如何书写网络请求框架(先知)
- 关于网络上的各种mysql性能测试结论
- 关于ajax网络请求的封装实例
- HTTP的POST与GET区别与联系,实践中如何选择它们?
- windows2003 IIS6网络负载平衡设置
- HttpClient Post请求方式请求数据
- HttpURLConnection请求数据
- HttpUtils请求数据
- 网络爬虫项目开发日志(一):关于爬虫项目所涉及的领域知识
- Meta http-equiv属性详解