大家好,我是IT修真院北京分院第28期的学员,一枚正直纯洁善良的java程序员
今天给大家分享一下,修真院官网java任务6,jmeter,badboy简介。
1.背景介绍
Apache JMeter是Apache组织开发的基于Java的压力测试工具。
JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。
做压力测试,一般要使用工具,人工是没办法做的。最常用的工具是LoadRunner, 但是LoadRunner毕竟是收费软件,而且使用上也比较复杂。 现在越来越多的人开始使用Jmeter来做压力测试。免费,而且使用上非常简单
2.知识剖析
吞吐量:是指在一次性能测试过程中网络上传输的数据量的总和,吞吐量指标反映的是服务器承受的压力
吞吐量(承压能力)与request对CPU的消耗、外部接口、IO等密切关联;主要是由TPS和并发数决定
影响参数:TPS、并发数、响应时间
TPS(Transaction Per second):每秒钟系统能够处理事务或交易的数量,它是衡量系统处理能力的重要指标
并发数:系统同时处理request/事务数
p>1.测试计划(Test Plan):是使用 JMeter 进行测试的起点,它是其它 JMeter 测试元件的容器。
2.线程组(Thread Group):代表一定数量的并发用户,它可以用来模拟并发用户发送请求。
3.取样器(sampler):定义实际的请求内容,被线程组包含,我们主要用HTTP请求。
4.监听器(Listener):负责收集测试结果,同时也被告知了结果显示的方式
5.逻辑控制器(Logic Controller)
6.断言(Assertions):可以用来判断请求响应的结果是否如用户所期望的
7.配置元件(Config Element):维护Sampler需要的配置信息,并根据实际的需要会修改请求的内容
8.前置处理器(Pre Processors)和后置处理器(Post Processors)
9.定时器(Timer):定时器(Timer)负责定义请求之间的延迟间隔。
3.常见问题
1、bat脚本启动失败
4.解决方案
安装java,如果已经安装,配置环境变量
5.编码实战
6.扩展思考
熟悉 LoadRunner 的朋友一定不会对其 TPS(每秒事务数)、TRT(事务响应时间) 等视图感到陌生,因为这是压力测试最为关键的两个指标。Meter 以其开源、轻巧、灵活、扩展性高等特性赢得了广大测试从业人员的青睐,但是它没有像 LoadRunner 那样提供一个 TPS、TRT 之类的视图,虽然聚合报告也能说明一些整体以及实时的问题,但是就整体趋势、实时平均值走向、稳定性报告方面就无能无力了
7.参考文献
https://www.cnblogs.com/wangtao_20/archive/2014/04/04/3645690.html
http://blog.csdn.net/defonds/article/details/54576604
8.更多讨论
Q1:jmeter的可视化tps插件有什么作用?
A:如果没有的话我们只能看到一次测试中tps的平均值,有可视化tps插件我么可以看到tps随时间的变化波动。
Q2:压测的目的是什么?
压测是找到程序的瓶颈,根据实景情况看是否可以满足要求,如果不满足就需要进行优化,可以从硬件,数据库等方面优化
Q3:还有其他的压测工具吗?
另一个流行的压测工具是LoadRunner,不是免费的,其他还是有很多,如:NeoLoad,WebLOAD,Loadster,Load impact等
9.鸣谢
视频:https://v.qq.com/x/page/s0541n5kmzw.html
PPT:https://ptteng.github.io/PPT/PPT-java/task6-jmeter.html#/
结束语:
今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~
网友评论