JMeter连接数据库(查询出的数据作为参数)


针对Mysql

jdbc:mysql://ip:3306/数据库名?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true(mysql用utf8,其他数据库用utf-8)

allowMultiQueries=true指的是支持多行查询

但是查询出来的结果这样只会显示一条,而且是第一条的结果被显示,那要怎么解决呢?(实际上是两条都执行了,只是Jmeter没显示,可以用两条insert语句去验证)

Query Type:选择Callable Statement,调取数据存储

 二、查询的值作为参数

 可以查看下查出来的结果集:

 那么,怎么把这些值取出来呢???

1、假设只要一个值,那么直接取好了,比如:${bug_status_1}就好了

2、如果要批量取值怎么办???依次取出来

此处的结束值可以试试填写:${bug_status_#}

这里不要误解了,没找到好的截图,参数应该换为${temp}

 2方式:计数器

那么请求里面应该怎么写呢???不能变量里加变量吧,用函数助手来解决,这里我们可以用:

${__V(bug_status_${tmpid},)}

bug_status_1是数据库查出来的,作为参数的参数名,tmpid是计数器用来替代那个1的参数。

 

但是这样,只能在线程组内加循环或者线程组,才能执行多次,这样数据库的查询请求也会多次,解决方案:把查询请求放进一个吞吐量控制器:

或者,把这个请求放进一个仅一次控制器内

结果:


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM