JMeter 压力测试

JMeter压力测试基本使用

压力测试是每一个Web应用程序上线之前都需要做的一个测试,他可以帮助我们发现系统中的瓶颈问题,减少发布到生产环境后出问题的几率;预估系统的承载能力,使我们能根据其做出一些应对措施。

首先下载JMeter:https://jmeter.apache.org/download_jmeter.cgi
JMeter 压力测试_第1张图片
下载之后直接进行解压缩,在bin目录下,双击运行jar包即可打开工具,当然了,这里也需要安装JDK啦,安装JDK也就不详细说了,如上图:也有对应的Java版本。

之后简单来说,先准备一个接口,在这里启动项目使用一个findAll接口
JMeter 压力测试_第2张图片
之后在JMeter当中添加测试计划,在下方添加线程(用户)=> 线程组,给定线程数,这里的线程数也就是发送请求的次数。
JMeter 压力测试_第3张图片
在线程组下添加 取样器 => HTTP请求,将http请求添加进来,选择对应的请求参数等配置
JMeter 压力测试_第4张图片
还在线程组下添加 监听器 => 察看结果树,用来查看请求发送后返回的结果数据
以及添加 监听器 => 聚合报告, 整个的线程组发送请求生成报告。

最后直接进行执行请求,查看返回数据。
首先是 察看结果树:可以看到发送的所有请求以及请求相关数据
JMeter 压力测试_第5张图片
第二个的话就是聚合报告,聚合报告还是能够充分的反映请求快慢等相关数据的
JMeter 压力测试_第6张图片
下面是对于聚合报告所带参数含义:

标题 含义
Label http请求的名字
样本 总http请求的次数。比如线程数5,循环次数2,总请求就是5*2=10。
平均值 单个request的平均响应时间。当响应时间曲线平缓,无波动,使用平均时间更准确。当响应时间曲线波动大,忽高忽低,建议使用90%Line时间更为准确。
中位数 中位数时间相当于50%Line。
90% 百分位 百分之90的响应时间,请求中百分之90的响应时间低于这个数
95% 百分位 百分之90的响应时间,请求中百分之95的响应时间低于这个数
99%百分位 百分之99的响应时间,请求中百分之99的响应时间低于这个数
最小值 总请求中的最小响应时间。
最大值 总请求中的最大响应时间。
异常% 总请求的中的错误率。错误率=失败请求/总请求
吞吐量 请求时间中的总吐吞量
接收 KB/sec 每秒处理的服务器的请求数。相当于loadrunner的LoadRunner的Transaction per Second数
发送 KB/sec 每秒发送到服务器的请求数

使用JMeter对MySQL进行测试

首先我们新建一个测试计划,在测试计划加上之后我们对mysql进行测试,我们在测试计划加上mysql的驱动jar包。
JMeter 压力测试_第7张图片
其次我们还是创建一个线程组,给上100个线程数,之后我们需要添加一个配置元件 -> JDBC Connection Configuration,首先我们加上一个连接池,给连接池加上一个名字,之后在下方我们就需要配置数据库相关配置了。
JMeter 压力测试_第8张图片
而后就是发送jdbc请求了,我们新增一个取样器 -> JDBC Request 。添加前面创建的连接池的名称,这里也就用mysql作为名称,之后我们添加一个sql语句,在sql语句上面需要选择对应的sql语句的执行类型(select、update等等)
JMeter 压力测试_第9张图片
最后面就是默认的了,分别加上一个察看结果树和一个据合报告,用来查看结果。

JMeter数据打造
先添加一个循环控制器,在循环控制器下添加一个BeanShell 取样器

random = ${__Random(1111,9999)}
String account = String.valueOf(random)
String password = "P"+account
vars.put("account",account)
vars.put("password",password)

之后我们发送HTTP请求进行设置,使用 ${account} 获取值。

你可能感兴趣的:(软件测试,jmeter)