Jmeter学习之-从数据库取出数据并且校验数据是否准确
https://www.cnblogs.com/wuyonghuan/p/7479582.html
应用场景:调用某个接口像数据库中插入数据,需要在接口调用完成后查看数据更新或插入的数据是否正确的时候需要用到
分两大部分
第一部分--配置数据库
- 配置数据库连接:右键“添加>配置元件>JDBC Connection Configuration ”

第二部分--举例说明查询请求的使用步骤
- 先添加一个用户自定义的变量,

- 然后按照下面第二图的格式填写变量,这里填写 的变量名称是“id” 变量值是“2klakzll4y181221082435273”(不传参数给sql语句,此步可忽略 )

- 添加数据库请求:线程组上右键依次选择“添加>取样器>JDBC Request”

- 在JDBC Request中写JDBC Request的信息,按照需要填写 (绿色方框部分比较重要,下方有说明该怎么填)

- Variable Name of Pool declared in Jdbc...:这里填写JDBC Connection Configuration配置的variable Name of Pool ,如下图所示 (上面的步骤中有这个配置的)

- 例子中的查询语句是:SELECT * FROM order_info_116 WHERE id='${id}' ,这里的${id}-- id即第一步中的自定义变量的名称,${id}表示取到这个变量的值: 2klakzll4y181221082435273
- Result variable name:设置用来保存从数据库获取的值的,会以key=value的字符串格式保存,这里填写的是“SQLresults”,即将查询结果保存在 SQLresults中,获取查询结果具体值的方法:Res= vars.getObject("SQLresults")
- Variable Name of Pool declared in Jdbc...:这里填写JDBC Connection Configuration配置的variable Name of Pool ,如下图所示 (上面的步骤中有这个配置的)
- 添加断言,判断数据库查询结果是否符合预期

- 按照需求编辑断言脚本,此处以校验数据库返回的patient_id字段的值是否等于997479571,等于则断言成功,不等于则断言失败,脚本文件如下(建议先在java编辑器中调试好,再复制过来稍作修改)

说明:
第1行:Result=vars.getObject("SQLresults"); 获取查询的所有结果,这里的SQLresults即JDBC请求中的“Result variable name”
第2行:log.info打印出一些信息,便于调试,实际脚本中可不要
第3行:String patientIdActual = Result.get(0).get("patient_id").toString() 取查询结果中的第1行的patient_id字段的值,转换成String类型(便于用equals方法比较),存放在patientIdActual中,即实际值
第4行:实际值存放在String 型变量patientidExpected中
第8-13行:根据业务比较实际值和期望值,得到相应的返回 --Failure=false,则断言为成功,Failure = true 则断言失败。
Jmeter学习之-从数据库取出数据并且校验数据是否准确的更多相关文章
- JMeter学习笔记--创建数据库测试计划
添加线程组(并发用户):线程数(10),Rame-Up Period(0), Loop Count(3) 线程组添加JDBC请求(配置元件):Variable Name(MySQL), Databas ...
- MySQL(一) -- MySQL学习路线、数据库的基础、关系型数据库、关键字说明、SQL、MySQL数据库、MySQL服务器对象、SQL的基本操作、库操作、表操作、数据操作、中文数据问题、 校对集问题、web乱码问题
1 MySQL学习路线 基础阶段:MySQL数据库的基本操作(增删改查),以及一些高级操作(视图.触发器.函数.存储过程等). 优化阶段:如何提高数据库的效率,如索引,分表等. 部署阶段:如何搭建真实 ...
- 学习Angularjs向数据库添加数据
今天学习angularjs向数据库添加数据. 学习此篇,得从以往几篇开始,因为那还有创建数据表等演示. 现在来创建一个添加的存储过程: SET ANSI_NULLS ON GO SET QUOTED_ ...
- mysql 基本语法学习1(数据库、数据表、数据列的操作)
今天学习了一下mysql语法,并记录下来 1.mysql的数据库操作 /***1.操作数据库的语法 ***/ -- 1)显示所有数据库 -- show databases; -- 2)创建数据库 -- ...
- JMeter学习(三十五)使用jmeter来发送json/gzip格式数据
一.使用jmeter来发送gzip数据 有时候我们需要模拟在客户端将数据压缩后, 发送(post)到服务器端. 通常这种情况,会发生在移动终端上. 这样做的好处, 是可以节省流量. 当然, 服务器返 ...
- ThinkPHP 学习笔记 ( 三 ) 数据库操作之数据表模型和基础模型 ( Model )
//TP 恶补ing... 一.定义数据表模型 1.模型映射 要测试数据库是否正常连接,最直接的办法就是在当前控制器中实例化数据表,然后使用 dump 函数输出,查看数据库的链接状态.代码: publ ...
- JMeter学习(三十四)使用jmeter来发送json/gzip格式数据(转载)
转载自 http://www.cnblogs.com/yangxia-test 一.使用jmeter来发送gzip数据 有时候我们需要模拟在客户端将数据压缩后, 发送(post)到服务器端. 通常这种 ...
- JMeter学习笔记(十八)——返回的响应数据出现中文乱码_解决方案
一.问题描述 使用jmeter过程中遇到了请求返回的响应数据出现中文乱码 二.原因分析 当没有对响应数据or响应页面设置支持解析中文的编码时,JMeter则会以默认的ISO-8859-1格式解析,而其 ...
- 大数据学习day25------spark08-----1. 读取数据库的形式创建DataFrame 2. Parquet格式的数据源 3. Orc格式的数据源 4.spark_sql整合hive 5.在IDEA中编写spark程序(用来操作hive) 6. SQL风格和DSL风格以及RDD的形式计算连续登陆三天的用户
1. 读取数据库的形式创建DataFrame DataFrameFromJDBC object DataFrameFromJDBC { def main(args: Array[String]): U ...
随机推荐
- C# Cache缓存读取设置
先创建一个CacheHelper.cs类,代码如下: using System; using System.Web; using System.Collections; using System.We ...
- 利用cwRsync客户端将Windows下文件同步到Linux
这里不描述Linux服务端安装配置rsync服务的过程,有需要可以在网络上查找相关教程. 1.安装cwRsync客户端下载地址:http://itefix.no/cwrsync/下载文件cwRsync ...
- pom文件中maven-assembly-plugin插件学习
一.使用场景 如果项目是微服务架构,可能用到这个插件的概率比较高,平时普通的项目不需要这样的实现方式. 如果项目内的一部分通用功能,不需要挨个引用,则需要将通用功能部分达成jar包. 二.Maven- ...
- Nios II 程序固化(如何下载elf文件)
Nios II 程序固化(如何下载elf文件) 2018年10月15日 21:37:32 瓜儿不甜 阅读数:723 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog ...
- 【转】Mac OS X 上修改主机名
修改主机名称 sudo scutil --set HostName MacBookPro 修改共享名称 sudo scutil --set ComputerName MacBookPro [转自]:h ...
- 针对json的查询--alibaba的开源项目jsonq
项目地址: https://github.com/alibaba/jsonq 示例json { , , "test": "Hello, world!", &qu ...
- (转) 开运算opening_circle和闭运算closing_circle的异同
从去除毛刺的策略看开运算opening_circle和闭运算closing_circle的异同 例一:毛刺在往外凸的面上 策略1:分割出黑色部分,然后通过开运算去掉毛刺,再通过原黑色部分区域减去开运算 ...
- python 搭建一个http服务的小例子
一.创建Server 1.Dos 命令 python -m BaseHTTPServer [port] 默认端口是8000, 2.Python 脚本启动 #coding:utf-8 ''' Creat ...
- Houdini技术体系 基础管线(四) :Houdini驱动的UE4植被系统 上篇
背景 之前在<Houdini技术体系 过程化地形系统(一):Far Cry5的植被系统分析>一文中已经对AAA游戏中过程化植被的需求有了一定的定义,后续工作就是如何用Houdini开发功能 ...
- Houdini技术体系 基础管线(三) :UE4 Landscape Component的多选支持 下篇
背景 上篇中,我们介绍了如何修改Houdini Enigne来设置单个Landscape Compnent的Height和Layer的数据,但原生Houdini Engine并不支持多选Compone ...