Jmeter 后置处理器(BeanShell PostProcessor)

转载自:https://www.cnblogs.com/licl11092/p/6862010.html

1、新建JDBC Request,如下图所示:

重要的参数说明:
Variable Name:数据库连接池的名字,需要与JDBC Connection Configuration的Variable Name Bound Pool名字保持一致
Query:填写的sql语句未尾不要加“;”
Parameter valus:参数值
Parameter types:参数类型,可参考:Javadoc for java.sql.Types
Variable names:保存sql语句返回结果的变量名
Result variable name:创建一个对象变量,保存所有返回的结果
Query timeout:查询超时时间

Handle result set:定义如何处理由callable statements语句返回的结果


设置查询结果变量名称:Result variable name:user_name

2、JDBC request下添加后置处理器,BeanShell PostProcessor,通过脚本操作变量


接下来,在另一个接口中的参数可以通过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开始计数。从列取值要指定列名;
 
3、举例说明:
counts = vars.getObject("user_name").size();
var users = vars.getObject("user_name");
var user = users.get(2);
vars.put("username",user.get("account").toString());
vars.put("password",user.get("passwd").toString());

vars.put("hello","word");


猜你喜欢

转载自blog.csdn.net/wxstar8/article/details/80049845