jmeter压测工具
jmeter
压测工具
介绍以及安装
官网地址:https://jmeter.apache.org/
Apache JMeter™应用程序是开源软件,一个 100% 纯
Java
应用程序,旨在加载测试功能行为和测量性能 。它最初是为测试Web
应用程序而设计的,但后来扩展到其他测试功能。
-
安装前提:
java
环境,cmd
下java -version
验证。 -
下载
-
启动:双击解压文件夹
bin
目录下的jmeter.bat
,通过 【Options
】->【Choose Language
】变更为简体中文
简单测试
Jmeter-http
接口测试添加步骤:
-
创建线程组
在左侧的
Test Plan
上右键 【添加】-->【线程(用户)】-->【线程组】,设置线程数和循环次数。只设置这两个即可,比如1000
的线程数,1
次循环 -
配置HTTP默认请求元件
刚刚创建的线程组上右键 【添加】-->【配置元件】-->【
HTTP
请求默认值】。只需要配置协议、地址和端口这三项即可,这样后面所有的请求都是基于现在的这个进行的,比如http://180.184.74.13:8000,后面的的请求所有的url
前缀都是如此了,只需要使用path
即可。 -
配置
HTTP Cookie管理器
元件使用其他登录方式可以忽略此步骤,线程组上右键 【添加】-->【配置元件】-->【
HTTP Cookie
管理器】,并在下方设置登录的cookie
。 -
http
请求在线程组右键 【添加】->【取样器】-->【HTTP 请求】设置我们需要测试的API的请求路径和数据。
-
添加请求头
线程组上右键 【添加】-->【配置元件】-->【
HTTP
信息头管理器】 -
添加断言
线程组上右键 【添加】-->【断言】-->【响应断言】,根据响应的数据来判断请求是否正常。比如只根据状态码判断是否正常。
-
要测试的响应字段:响应代码
-
模式匹配规则:
Equales
-
要测试的模式:200
-
错误提示信息:“出错啦!”
-
-
添加察看结果树
线程组上右键 【添加】-->【监听器】-->【察看结果树】。点击工具栏上的运行按钮就可以看到结果了
-
添加汇总报告
线程组上右键 【添加】-->【监听器】-->【
Summary Report
:汇总报告】。点击工具栏上的运行按钮就可以看到结果了
注意保存上述文件。
- 执行测试计划
cmd
中执行:进入jmeter
的bin
目录,执行下面的命令
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
jmx file
:测试计划文件路径results file
:测试结果文件路径Path to web report folder
:web
报告保存路径
例子:
jmeter -n -t [testplan/RedisLock.jmx] -l [testplan/result/result.txt] -e -o [testplan/webreport]
csv导入数据
线程组上右键 【添加】-->【配置元件】-->【CSV
数据文件设置】
http
请求引用数据
操作数据库
-
下载连接
mysql
的jar
包,地址:https://dev.mysql.com/downloads/connector/j/,- 选择
Platform Independent
- 选择
-
选择
ZIP
文件进行下载- 点击
Archives
,注意选择自己数据库对应的版本:https://downloads.mysql.com/archives/c-j/
- 点击
-
解压,把里面的
jar
包放到jmeter
的lib
目录下 -
配置连接信息
-
在
Test Plan
页面,点击浏览 ,将目录或jar
添加到类路径Add directory or jar to classpath
。此处选择我们刚刚放在lib
下的jar
即可 -
线程组右键添加【配置原件】-->【
JDBC Connection Configuration
】JDBC Connection Configuration
页面配置连接信息-
数据库:
mysql
-
DriverName
:com.mysql.jdbc.Driver
-
URL
:jdbc:mysql://host:port/dbname?allowMultiQueries=true&serverTimezone=UTC
-
用户名、密码
-
-
线程组右键添加【取样器】-- > 【
JDBC Request
】
-
- 线程组右键添加【监听器】-- > 【察看结果树】,点击运行测试
关联
1.添加关联
-
在某个请求上右键添加【后置处理器】 --> 【
json
提取器】 -
设置
-
响应字段:主体
-
引用名称:
token
-
正则表达式:
$.key1.key2
-
2.获取关联数据
-
parameters中获取:
${token}