jmeter性能测试结果分析
用百度的网页测试200个用户在10秒之内同时访问百度的网页,每个用户只访问一次:
步骤如下
添加线程组首先点击测试计划,右键——添加——Threads(Users)——线程组
线程数:就是模仿用户并发的数量,Ramp-up:运行线程的总时间,单位是秒,循环次数:就是每个线程循环多少次。
我现在的线程数是200,就是相当于有200个用户,运行线程的总时间是10秒。也就是说在这10秒中之内200个用户同时访问,一秒钟有20个用户同时访问,每个用户循环一次,也就是访问一次。
HTTP请求默认值
.点击测试计划,右键——添加——配置元件——HTTP请求默认值
HTTP请求默认值页面
协议:web的请求头是什么就是什么,这里拿百度做参考,输入https,服务器或IP:就输入百度的地址就可以了
3. 添加HTTP请求
点击线程组,右键——添加——Sampler——HTTP请求
协议和ip地址可以不用输入,因为在HTTP的默认值我们已经添加了,这里只需要在路径加/表示是在根目录,不填写IP地址就使用的默认的。
4 .添加聚合报告查看结果树,用表格查看结果
点击线程组,右键——添加——监听器——察看结果树/聚合报告/用表格察看结果
通过察看结果树,我们可以看到每个请求的结果,其中红色的是出错的请求,绿色的为通过。
Thread Name:线程组名称
Sample Start: 启动开始时间
Load time:加载时长
Latency:等待时长
Size in bytes:发送的数据总大小
Headers size in bytes:发送数据的其余部分大小
Sample Count:发送统计
Error Count:交互错误统计
Response code:返回码
Response message:返回信息
Response headers:返回的头部信息
聚合报告分析
这里绿色的就说明请求是通过的,返回值是200,如果出现红色的×就说明请求失败,这时候可以通过右边的取样器结果和响应数据来查看结果。
这里可以看到很多数据,相关名词解释如下:
Sample:本次测试场景共运行多少线程;
Average:平均响应时间;
Median:统计意义上的响应时间中值;
90% line:所有线程中90%的线程响应时间都小于xx的值;
Min:响应最小时间;
Max:响应最大时间;
Error:出错率;
Throughput - 吞吐量 这儿显示的是20个请求要1秒
TPS:每秒处理的事务数,jmeter的Throughput为吞吐率(请求数/秒),在加了事务控制器后,TPS=Throughput {TPS=并发数/响应时间} {Throughput =(sample样本数)/(最后一个线程启动的时间+最后一个线程持续的时间-第一个线程启动的时间}
200个用户在10秒中同时访问百度的页面,平均响应时间是85毫秒,最大的响应时间841毫秒,最小的响应时间是37毫秒,错误率为0,说明百度网页 的性能还是不错的,每个页面都能很快的得到响应,不用1秒钟。
用表格查看结果
Sample:每个请求的序号
Start Time:每个请求开始时间
Thread Name:每个线程的名称
Label:Http请求名称
Sample Time:每个请求所花时间,单位毫秒
Status:请求状态,如果为勾则表示成功,如果为叉表示失败。
Bytes:请求的字节数
样本数目:也就是上面所说的请求个数,成功的情况下等于你设定的并发数目乘以循环次数
平均:每个线程请求的平均时间
最新样本:表示服务器响应最后一个请求的时间
偏离:服务器响应时间变化、离散程度测量值的大小,或者,换句话说,就是数据的分布。
在这里面可以看到,线程组名称,每个线程响应时间,返回结果是否成功,字节数等
5. 如何只清除部分数据
点击左边要清除的选项,比如,清除上一次百度页面测试的聚合报告,点击聚合报,然后点击工具栏的扫把图标即可,这个只是清除你选择的内容。
如果要清除整个线程的结果数据,就直接选择该线程组,点击有两把扫把的图标即可。