性能压测工具说明(Jmeter)
Jmeter工具准备
获取路径:http://jmeter.apache.org/download_jmeter.cgi(因为JMeter是使用JAVA写的,所以使用JMeter之前,先安装JAVA环境,JAVA环境变量配置:https://jingyan.baidu.com/article/fd8044fa2c22f15031137a2a.html
解压下载的二进制包,进入bin目录,使用jmeter.bat启动程序。启动之后会有两个窗口,一个cmd窗口,一个JMeter的 GUI。
上面的意思就是:不要使用GUI运行压力测试,GUI仅用于压力测试的创建和调试;执行压力测试请不要使用GUI。
使用下面的命令来执行测试:
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
以上就是打开Jmeter工具的方式,可以通过“options”来切换语言
压测创建
-
右击添加“线程组”
-
线程组
这里设置线程数为50
说明:
- 线程数:a
- Ramp-Up时间:b
- 循环次数:c
(1)每个线程可以看做是一个用户
(2)循环次数指每个用户的循环次数
(3)Ramp-Up时间指的是需要在这个时间内完成所有的请求:
得出:
a、最终请求次数= ac
b、每个请求间隔时间 b/(ac)
-
添加HTTP请求默认值
-
添加HTTP请求头
- 添加HTTP请求
添加请求方式、请求路径、data
注:Jmeter支持参数化传递数据
- 添加测试报告
测试报告支持第三方插件,可以更清楚的查看到测试结果数据走向,以便分析测试结果。
-
执行测试
-
请求进度及结果
-
查看报告
参数化应用
在实际压测过程中,由于并发时,业务可能要求传递不同参数值,故参数化方式解决了这个问题
1、random随机范围:选项--函数助手对话框--选择_Random--输入最小最大值--点击生成--复制生成的函数字符串--放到接口中要参数化的地方
2、用户定义的变量:右键线程组--添加--配置元件--用户定义的变量--设置名称和值:比如名称随便写一个(host),值为域名(aa.bb.com),那前面接口中需要调用这个相同域名的地方,改成${host}就可以了,此方式便于多个接口不同环境测试验证
3、计数器:右键线程组--添加--配置元件--计数器,则会在提交数据时实现自增;