Jmeter 数据库测试参数化
2024-09-02 00:26:27
1、JDBC Request 参数化
- 方法一、Jmeter 参数化,在 sql query 中使用变量
- Jmeter 参数化,使用 csv 参数化
- sql query 中使用 ${变量名} 引用
- 方法二、在 sql query 中使用 "?" 作为占位符,并传递参数值和参数类型
- 传递的参数值是常量,多个变量使用 "," 分隔(注意:Parameter values 中传入多个参数时,前提时 sql 中需要多个参数)
- 传递的参数值是变量,使用 csv 参数化 id 再使用 ${变量名} 的方式
2、Variables names 参数使用方法
- Jmeter 官网给的解释是:如果给这个参数设置了值,它会保存 sql 语句返回的数据和返回数据的总行数。假如,sql 语句返回2行,3列,且 variables names 设置为 A,B,那么如下变量会被设置为:
A_#=2 (总行数)
A_1=(第1列, 第1行)
A_2=(第1列, 第2行
B_#=2 (总行数)
B_1=(第2列, 第1行)
B_2=(第2列, 第2行)
- 如果返回结果为 0,那么 A_# 和 B_# 会被设置为 0,其它变量不会设置值。
- 如果第一次返回 6 行数据,第二次只返回 3 行数据,那么第一次多的 3 行数据变量会被清除。
- 可以使用 ${A_#}、${A_1}...获取相应的值
- 实例如下
- 添加一个 "Debug Sampler" 用来查看输出的结果,设置 variables name 为 A,B,C,D
- A 代表第一列所有的数据,A_# 可以获取到第一列的行数
- A_n:获得第一列第 n 行的数据
- 假如我们只需要第一列和第三列的数据,可以写成 A,,C ;中间的 "," 不可以省略
3、Result variable name(使用上一次查询结果作为参数)
- JDBC Request(查询所有信息)请求设置如下
- 添加 BeanShell Sampler
vars.put("新变量名",vars.getObject("变量名").get(第几个值).get("数据库表列名").toString());
- BeanShell Sampler 下面添加 JDBC Request,再通过上面的结果变量 ${re} 作为查询条件进行反验证 BeanShell Sampler 取值成功
最新文章
- 关于jqGrig如何写自定义格式化函数将JSON数据的字符串转换为表格各个列的值
- 【转】70个经典的 Shell 脚本面试问题
- ROS学习笔记(二)——ubantu 14.04 安装
- 简单区分VMware的三种网络连接模式(bridged、NAT、host-only)
- [转]Java 泛型: 什么是PECS(Producer Extends, Consumer Super)
- 通过maven添加quartz
- svn IP地址变更后如何变更
- BestCoder Round #67 (div.2) N*M bulbs
- OpenLayer 3 鼠标位置坐标显示控件
- IOS开发-UI学习-NSMutableAttributedString(带属性的字符串)的使用
- 第三章 霍夫变换(Hough Transform)
- 常用Oracle进程资源查询语句(运维必看)
- 使用 C#/.NET Core 实现单体设计模式
- [ArcGIS API for JavaScript 4.8] Sample Code-Get Started-MapView,SceneView简介
- pytorch multi-gpu train
- PHP实用工具类
- 如何打印一棵树(Java)
- MongoDB之Limit选取Skip跳过Sort排序
- [Canvas]用透明PNG图在背景上画前景能不遮挡背景
- U811.1接口EAI系列之五--材料出库--VB语言