使用Jmeter进行接口压测
2023-11-29 本文已影响0人
释梦石
一、 脚本编写
创建jmeter线程组常用元件
- http信息头管理器
1)需要传输cookie,token或其他某些信息,或是需要伪造请求头的时候添加,放接口header中的信息,会随着我们的HTTP请求一起发送到服务器
2)作用范围:1.放置线程组下,对该线程组生效;放http请求下,对单个http请求生效 -
csv文件参数获取
txt文件数据使用分隔
image.png
二、jmeter压测指标分析
- QPS: 每秒查询率,是一台服务器每秒能够响应的查询次数,是表示服务器在规定时间内所处理流量多少的衡量标准, 即每秒的响应请求数,也即是最大吞吐能力
- TPS: 事务数/秒,即每秒处理事务数,一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程,客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数。包括:用户请求服务器,服务器处理,和服务器返回给用户的过程
单纯地接口压测中,tps和qps含义相同(一秒处理多少个事务,这里的事务就是接口请求和一秒处理多少接口请求一致) - 并发量:接口压测中,这个数值可以认为1s请求压测服务器的接口数据量来计算,反应了系统的负载能力
- 吞度量:被测系统单位时间(通常为1s)内处理请求的数据量,TPS和QPS来衡量
- 压测中通常分析平均响应时间,主要关注中位数和90%的响应时长
三、jmeter中并发数量的设置
-
jmeter中线程数可以理解为用户个数,循环次数为一个线程的执行数,所以总的执行数为线程数 * 循环次数,如果循环次数勾选了永远,就一定需要一个持续时间,用来停止接口请求,如果没有设置,则需要手动停止
image.png -
并发量控制设置常数吞对量
jmeter压测常见命令
1、jmeter -n -t script.jmx -l result.jtl
执行当前目录中的脚本,生成的结果保存在当前目录,结果文件名称为result.jtl
2、jmeter -n -t script.jmx -l result.jtl -j run.log
执行当前目录中的script.jmx脚本,生成的结果保存在当前目录,结果文件名称为result.jtl,日志保存在当前目录的run.log文件中。
3、jmeter -g result.jtl -e -o html\test
使用result.jtl结果文件生成html报告,保存在当前目录的html\test路径中。
Jmeter的命令行模式是支持参数传递的,采用的是properties参数传递的方式。