Jmeter接口测试(四)调用数据库数据作接口参数
一、背景
由于不同接口产生的数据在数据库,每次调接口之后,还需要手动去查询数据库,造成很多时间的浪费,就想能不能在接口调用完成的同时,也能把对应产生的数据作为参数提供给下一个接口调用?有了这想法之后,在网上查询了各种方法,也综合自己的总结,终于找出解决调用数据库数据作为参数的问题
备注:整个流程涉及到:
1.上下接口使用函数关联调用;
2.引用全局变量;
3.使用正则表达式;
4.连接数据库查询
好了,进入主题
订单支付流程先了解一下整个流程:登录-》创建订单-》订单支付-》支付回调成功(订单已经支付成功)
二、建立流程所需要的接口
首先,建立关键全局引用的变量
1、登录
登录2、用正则表达式建立关联接口调用的依赖
调用token3、建立全局调用参数
全局调用参数其次,建立分支模块
备注:分支模块调用的全局变量,分支下面每个接口调用全局变量都一样;如果有多分支的情况,每个分支都是独立调用全局变量,且相互不影响
1、创建模块管理:简单控制器,以下所有http请求都建立在这个简单控制器下:
建立简单控制器 定义简单控制器名称2、在简单控制器上创建http请求:订单创建
订单创建订单创建响应结果:
根据响应结果返回参数内容,主要是返回订单号,建立正则表达式为下面请求接口调用(http请求,数据库查询)
调用订单号3、建立订单支付,调用上面正则表达式返回参数
调用订单号进行支付根据返回结果,取到关键的返回单号,建立正则表达式
返回结果 调用返回结果的正则表达式到此,基本一个订单创建到订单支付暂时完成了
4、接下来,才是重点的体现,连接数据库,并调用数据库数据提供给接口调用
连接数据库,方法网上很多,这里就略过
连接数据库6、建立数据库查询请求
查询关联表的数据查看查询数据库结果
通过订单号查询的结果7、这里需要建立一个debug调试
debug模式查看debug模式下返回的结果
debug返回的结果,包含所有响应数据8、通过debug模式返回的结果,取到关键的数据作为调用的参数,建立正式表达式
调用数据作为参数9、最后,建立http请求支付回调成功
10、支付回调成功返回结果
支付回调成功End
因为自己不够优秀而感到恐慌,所以不断努力向前!
如果您认为王子的简书中的某篇文章还不错或者有所收获,您可以通过正文下方的“赞赏支持”功能打赏,给我喝一杯咖啡的机会【物质支持】,也可以微信、微博分享,因为这两种支持都是我继续努力的动力!
未完,待续……