快速入门
测试计划
测试计划
可以理解为一个插槽, 只有先创建了一个插槽,后续可以在这个测试计划
上添加一些类似插件的功能槽, 然后组合在一起形成一个个的详细测试
新建测试计划入口
测试计划内容, 在这里可以提前预定义一些自定义变量,当然嫌弃麻烦,也可以不用, 这只是个可选项, 想要后面用到的时候直接通过变量引用, 当然也可以在后面用到的时候直接输入原始值
配置元件
配置元件有点类似于提前设置用于http请求发送前的一些基础功能,如默认请求、请求头、授权处理等
在测试计划上右击,可以找到添加测试元件的入口
HTTP信息头管理器
, 在这里可以添加后续发送http请求时携带的请求头
HTTP请求默认值
, 在这里可以配置后续http请求发送行为的一些默认定义, 这里按需选择即可, 一般设置下内容编码即可
线程组
线程组用来定义针对目标接口的发送频率的行为, 即希望在多少单位时间内创建多少线程去请求目标接口以及以怎么样的一个频率去模拟多久然后终结行为等.
添加线程组入口
线程组参数面板
这里简单解释一下上图中线程组中参数含义
-
在取样器错误后要执行的动作, 这个指的是后续测试过程中如果发生错误,但测试计划并未满足预先设计的结束条件,是否继续执行
-
线程数 即需要创建多少个线程
-
Ramp-Up时间(秒) 即创建线程的准备时间, 和线程数组合即希望在多少秒内创建多少个线程,这只是个尽量,但不一定准
-
循环次数 这里有两个选项, 一旦勾选
永远
,则输入框不可用。与上述两个属性组合起来,即每多少秒创建多少线程发送请求,然后持续到永远,一直不停止。这个是基于时间,而不是次数。也可以取消勾选永远, 而精确到循环次数。 -
调度器 调度器一般配合上面循环次数中的
永远
使用, 这样即可以不以次数为目标,而是以调度器指定的持续时间来完成测试任务, 当整个测试计划执行中达到了指定的时间,则测试计划终止
取样器
在这里就可以添加核心的请求了,如要测试的HTTP请求则是通过取样器-HTTP请求来创建的
-
HTTP请求
右击线程组-添加-取样器-HTTP请求
添加HTTP请求元素
监听器
这里主要指的是请求发送出去后, 如何来监听结果
-
查看结果树
这个可以查看请求发送出去后的响应结果
-
聚合报告
类似其它的汇总报告,汇总图之类的监听器可以去试一试
通过对线程组的高频频率配置, 这里可以查看整个线程组期间对接口的测试结果, 如qps
一个简单例子
- 想要测试一个接口,在200个并发(近似)的时候,持续10分钟,然后这个结果的qps表现如何,是否会有报错,响应时间如何
添加默认请求头,具体看前面即可
线程组配置
添加取样器-HTTP请求
添加监听器-查看结果树
添加监听器-聚合报告
启动测试
查看结果树
查看聚合报告
命令行模式
GUI模式启动的时候控制台会有上面这一块的信息, 不要使用GUI模式开始测试,至于为啥,咱也不知道。
然后GUI模式可以用来创建测试计划,然后保存好之后使用命令行模式来运行测试计划和保存报告
命令如下, 注意下次运行的时候如果存在相同文件会报错, 报告目录如果下面有文件也会报错,所以每次运行前要先删除之前的结果。
-t 指定测试计划文件
-l 保存测试结果, 是一个文件
-e 生成测试报告
-o 指定测试报告存放位置,是一个目录,里面有html文件可以预览
进入到jmeter的bin目录
sh jmeter.sh -n -t jmx/boot-quick.jmx -l jmx/boot-quick.jtl -e -o jmx/report
来看下文件预览效果