假如你刚到公司参加实习,学习使用Jmeter进行网页端接口压力测试,那这篇文章一定要看。
可以直接从网上下载相关压缩包,解压后在bin目录下找到jmeter.bat文件打开使用。
打开后界面:
可在Options/ChooseLanguages里切换语言,方便使用。
右键TestPlans选择添加/线程(用户)/线程组:
已创建好好线程组,进入线程组设置页面:
各参数意义:
1.线程数:并发数。如图设置50为模拟50个用户进行压力测试。
2.Ramp-Up Period (in seconds):并发用户加载时间。图中设置为1表示一秒内加载50个用户进行测试。
3.循环次数:并发执行循环次数,一次测试下,总的请求数量=线程数 * 循环次数;“永远”勾选上后循环一直进行,直到手动选择停止。如图设置为进行50000次请求。
Ctrl + S保存后会生成一个.jmx文件,方便存取。
常用为http请求,以下皆用http作为示例。
右键线程组→添加→取样器→http请求。
选择后打开http请求设置窗口:
各参数意义:
1.协议:请求协议类型,设置为http或https。如图为http。
2.服务器名称或ip:具体的ip地址(如:192.168.xx.xx)或域名(如:xx.com)
3.端口号:顾名思义,所用端口号(如:80)
4.方法:即请求方式,常用的如get post等
5.路径:所测试接口具体路径。
6.参数:请求具体的参数。get请求一般用键值对直接传递,可在下方添加。post请求如果使用json传参,要先设置http信息头管理。详见下。(! ! 注:参数设置之后一定要 ctrl+s保存!)
http信息头管理
以post类型json传参为例:在下方添加信息头,设置名称为:content-type;设置值为:application/json。
右键线程组→添加→监听器→查看结果树/汇总报告/聚合报告:
添加完成后,可看到左侧目录树结构:
之后可以点击上方工具栏绿色三角运行,或者直接右键线程组启动。
选择结果树查看各个请求信息。也可以查看汇总报告和聚合报告。
1、Lable:Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值;
2、#Samples:表示这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示100;【我的是用户有100,只迭代一次,因此也是100】
3、Average:平均响应时间——默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,也可以以Transaction 为单位显示平均响应时间;
4、Median:中位数,也就是 50% 用户的响应时间;
5、90% Line ~ 99% Line:90% ~99%用户的响应时间;
6、Min:最小响应时间;
7、Maximum:最大响应时间;
8、Error%:本次测试中出现的错误率,即 错误的请求的数量/请求的总数;
9、Throughput:吞吐量——默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction ;
10、Received KB/src:每秒从服务器端接收到的数据量;
11、Sent KB/src:每秒从客户端发送的请求的数量。