JMeter 关联、录制脚本、连接数据库
一、JMeter 关联
关联:当请求之间有 依赖关系,比如一个请求的响应数据 是另一个请求的参数数据,这时候就需要用到关联处理。
JMeter 中常用到的关联方法:
正则表达式提取器:
Xpath提取器
JSON提取器
1、正则表达式提取器
作用:针对任意格式的响应数据进行提取
位置:测试计划 --- 线程组 --- HTTP请求 --- (右键添加)后置处理器 --- 正则表达式提取器
案例一:
案例二:将博客首页第五个校区地址作为参数传递(span 为地址校区)
响应中的地址格式显示:<p><span>地址</span>上海校区</p>
方法一:(第几个校区,就看响应数据的第几个,然后匹配数字为 5)
方法二:在上面的步骤中 添加 Debug Sampler 调试器(此时将匹配数字设置为 -1,将全部获取的响应数据放到调试其中。然后查看调试器里面地址的存储变量名,放到http请求里面参数)
2、Xpath 提取器
作用:针对HTML格式的响应数据结果进行提取
位置:测试计划 --- 线程组 --- HTTP请求 --- (右键添加)后置处理器 ---xpath 提取器
案例:获取页面首页的 title 标签
3、JSON提取器
作用:针对JSON格式的响应结果进行提取
位置:测试计划 --- 线程组 --- HTTP请求 --- (右键添加)后置处理器 --- JSON提取器
案例:
4、JMeter 不同线程组之间数据传递
JMeter 属性的配置函数:
__setProperty 函数:将值保存成 JMeter 属性,需要通过Beanshell取样器来执行。 (全局变量)
__property 函数:在其他线程组中使用 property 函数读取属性,在其他线程组中使用 property函数。 (读取全局变量名)
执行:
案例:将线程组 一 中提取到的城市名,作为参数传递到其他线程组中
二、JMeter 脚本录制
JMeter 录制脚本:在没有接口文档的旧项目中,快速录制web页面产生的http请求,帮助编写接口测试脚本。
原理:
脚本录制步骤:
1、添加HTTP代理服务器
2、开启Windows操作系统的浏览器代理
3、启动代理服务器,开始录制
4、在浏览器界面中操作,成功后,就能在JMeter当中看到抓取的接口请求了
录制脚本的过滤规则设置:
在代理服务器里面 点击 Request Filtering
三、JMeter 连接数据库
1、直连数据库
使用场景
2、直连数据库的关键配置
1、添加MYSQL驱动 jar 包
方式一:在测试计划面板,点击“浏览...”按钮,将JDBC驱动添加进来
方式二:将MySQL驱动 jar 包放入到 lib/ext 目录下,重启JMeter
2、配置数据库连接信息
位置:测试计划 --- 线程组 --- (右键添加)配置元件 --- JDBC Connection Configuration
Variabale Name:随便写,不要写中文
3、添加 JDBC 请求
位置:测试计划 --- 线程组 --- 取样器 --- JDBC Request
案例:
案例二:在上面的步骤后,进行断言(搜索指定商品,在返回结果中检查是否包含指定商品的ID的详情URL)