当前位置:   article > 正文

jmeter 获取数据库表数据作为参数

vars.getobject jmeter数据库

jmeter - 获取数据库表数据作为参数

 

在jmeter中使用数据库表数据首先需要设置数据库连接,然后在创建JDBC取样器

1.创建配置元件

JDBC Connection Configuration 并设置连接,设置 variable name

 

 

Datebase

Driver class

Database URL

MySQL

com.mysql.jdbc.Driver

jdbc:mysql://host:port/{dbname}

PostgreSQL

org.postgresql.Driver

jdbc:postgresql:{dbname}

Oracle

oracle.jdbc.driver.OracleDriver

jdbc:oracle:thin:user/pass@//host:port/service

Ingres (2006)

ingres.jdbc.IngresDriver

jdbc:ingres://host:port/db[;attr=value]

MSSQL

com.microsoft.sqlserver.jdbc.SQLServerDriver

jdbc:sqlserver://IP:1433;databaseName=DBname

 

或者

或者

 

net.sourceforge.jtds.jdbc.Driver

jdbc:jtds:sqlserver://localhost:1433/"+"library"

 

 创建JDBC Request取样器,variable name 输入上面设置的值,从而建立对应关系

 

 

设置查询结果变量名称,这部分内容执行后返回的结果内容如下图

 

 

因为列较多,产生了折行

接下来,在另一个接口中的参数可以通过jmeter的内部函数获取指定的值

${__BeanShell(vars.getObject("user_login").get(${__intSum(${index},-1)}).get("method"))}

__BeanShell是jmeter内部函数入口

vars.getObject可以获取到jmeter上下文中我们定义的变量对象

数据库的获取方式${__BeanShell(vars.getObject("param").get(n).get("colname"))}

__intSum(a,b)获取一个数据的计算求和值

数据库获取第一行下标是从0开始的,但一般我们取值会默认设置1作为开始,所以这里我们做了一个处理,把我们设置的值减1,让他从0开始计数。从列取值要指定列名

注,${index}是另外一个外部参数,设定我们要取数据表中的几行值,设置如下,可以控制获取数据行

 

 

 

通过以上方式我们可以将数据库表中的数据作为参数传递给待测接口

 

转载于:https://www.cnblogs.com/ai594ai/p/6490510.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/天景科技苑/article/detail/1014215
推荐阅读
相关标签
  

闽ICP备14008679号