这里就不介绍下载安装了,直接上干货
建立http请求
1.我们打开jmeter后在页面左上角一栏可以看见options选项,选中choose language>chinese(simplified)
切换中文模式,如果你英文足够牛逼的话可以选择英文或者其它语言。
2.刚打开jmeter后会看到测试计划,选中测试计划右击选择线程创建线程组
3.选中线程组右击选择取样器创建http请求
4.点击创建好的http请求,填写请求信息
5.选中线程组右击选择监听器创建察看结果数
6.此时一个简单的get请求就创建完成,点击运行就可以在察看结果树中看见响应的内容了
7.若是post请求,或者其它请求需要填写请求头信息,点击http请求右击选择配置元件创建http信息头
管理器,创建打开后,点击添加name-value
8.察看结果数有时不能直白看见数值,可以创建调试取样器查看,鼠标选中线程组右击选择取样器创建
debug samlier
9.如果我们在创建多个接口的时候发现请求方式/域名/端口号都是一致的,每次创建一个接口都需要填写
相当麻烦,这个时候我们就可以创建http请求默认值来解决这个问题,选择线程组>添加>配置元件>http
请求默认值,创建成功后我们打开会发现和创建http请求的内容是一样的,我们这需要在这里填写公用的
信息,在以后创建http请求时则不需要填写,会默认匹配到。
10.如果请求中有涉及cookie值的,我们还需要创建cookie管理器来记录cookie值
上下游关系
1.json提取器
(1)鼠标选中http请求右击选择后置处理器创建json提取器
(2) 选中json提取器填写内容,若你不确定提取表达式写的对不对,可以在察看
结果数中输入表达式查看下,选中json path tester,在右侧红框的位置会出现
个输入框,这里就不做演示了。
(3)下个接口取值的时候,使用${变量}来调用
2.正则表达式提取器
(1)选择http请求鼠标右击选择后置处理器创建正则表达式提取器
(2)选择创建的正则表达式填写如下内容,正则提取万能模板(.+?),如响应的
是1234567,而我们要取45两个字段,则表达式写法:123(.+?)67
(3)下个接口取值的时候,使用${变量}来调用
注:json提取器只适用于响应的结果为json格式的,而正则则适用于全部
断言
1.响应断言
(1)选择http请求鼠标右击选择断言添加响应断言
(2)添加断言后选择测试字段,我用的最多的就是响应代码(json),响应文本(html/xml)
模式匹配规格,可多选,按照自己的需要来,测试模式就是需要断言的内容,点击
添加可断言多个内容,底部自定义失败消息(这里没有截图),是断言失败返回的结果
2.json断言
(1) 选择http请求鼠标右击点击添加>断言>json断言,
(2)点击创建好的断言在右侧添加内容,提取表达式和上面讲的json提取器是一个原理
函数助手
1.在生成变量或是创建多个用户名......时。每次发送请求都需要更改名称或者其他信息,这相
当麻烦,这个时候就可以用函数每次自动生成内容。在jmeter最上面菜单栏中,选择工具>函
数助手对话框,打开函数助手页面。
2.可在randm里面选择相应的函数,如果不会用可以点击帮助查看官网介绍,这里简单以random
为例。填写最大值和最小值,点击生成,在the result of the function is可查看生成的数值,这个
函数可运用到在一定范围内随机取值的场景中,拷贝并粘贴函数字符串的函数表达式,放在入参
的值中即可(${__Random(1,85,)});
数据驱动
一.csv文件
1.创建一个txt文件,第一行填写字段名,第二行以后包括第二行填写值,填写完成之后保存文件修
改后缀为csv(字段与字段之间,值与值之间用英文逗号隔开)
2.选择线程组>添加>配置元件>csv data set config创建csv数据文件设置
3.打开csv数据文件配置,填写如下内容,其它默认即可
4.在http请求入参中用${变量名}调用即可。
5.选择线程组填写下面内容
6.运行,这里也可以做性能测试,以上线程组和ramp-up就是并发用户数和并发时间,要想就看性能
数据,可以创建聚合报告,线程组>添加>监听器>聚合报告。
7.聚合报告分析,如下,响应时间都是以ms来计算的。聚合报告与汇总报告相似,这里就不做介
绍了
二.jdbc
1.使用jdbc连接数据库实现数据驱动,最终实现原理和csv一样,
2.首先我们需要准备mysql-jave.jar包,这里就不提供下载了,取去java官网下载即可,将下载后的jar
包放在jmeter安装路径的lib下,也可在jmeter测试计划中导入该jar包,这个有个弊端就是每次打开
jmeter都需要导入一次
3.创建jdbc request,选择线程组>添加>取样器>jdbc request。
4.打开jdbc request按照如下内容填写,其它内容看自己需要填写
5.创建jdbc connection configuration,选择线程组右击>添加>配置元件>jdbc connection
configuration
6.打开jdbc connection configuration按照如下内容填写,其它内容看自己需要填写
7.接下来就是调用jdbc request中variable names中的值了这里的调用不是${变量的方式},需
用到函数:${_V(adress_${变量名})}
用户自定义变量
1.选中测试计划在右侧填写name-value,还可以在线程组中创建用户自定义变量,调用的时候使
用${变量名即可}。
循环器控制器
1.我们在写接口的时候要想让该接口循环运行指定的次数,这个时候就需要循环控制器了,线程组>
逻辑控制器>循环控制器,创建。
2.如下图,循环次数按照自己需要来,要是永远运行则勾选