jmeter操作数据库,jmeter之beanshell

jmeter连接数据库
jdbc://mysql://localhost:3306/kkx-study?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true
执行多条语句:
jdbc://mysql://localhost:3306/kkx-study?useUnicode=true&characterEncoding=utf8
JDBC Request的query type怎么选
1、如果查询,选select
2、如果增删改 ,选update
3、只想看结果,选callback
4Query Type:Prepared Select Statement(预编译)
sql语句为:select * from emp where empName=? and id=?;
Parameter value:MM,2
Parameter value:varchar,integer

limit 2,3,2开始查3个,包括2
用计数器生成一个数字n,在SQL中引用,查出对应的结果
select empName from emp limit ${n}, 1;
SQL查询出来的数据用在后面的http请求中需要用ForEach控制器
在ForEach控制器中输入以下字段数据:
输入变量前缀:name
开始循环字段(不包含):0
结束循环字段(含):${name_#}
输出变量名称:t-name
勾选Add"_"before number?
大概意思是:jmeter会把name_1,name_2.....的数据存在t-name中
然后在http请求中,参数名称写  name,值写成${t-name}(以name为例)
如果要在参数化里面嵌套参数化需要借助jmeter自带的函数助手中的__V函数
BeanShell取样器:
String t_name = vars.getObject("xxx").get(0).get("empName");
log.info("t_name:" + t_name);
参数化CSV文件:先在测试计划中定义一个变量,定义一个变量,值是文件的位置,然后在CSV参数化文件中引入刚才定义的变量
vars是jmeter的变量
import java.util.*;
import java.text.*;

Date d = new Date();
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateStr = df.format(d);
print(dateStr);
vars.put("dateCrr",dateStr);//表示向jmeter的变量中添加一个名为dateCrr的变量,然后在别的地方引用${dateCrr}
vars.put("ab",ab"");     //put中的两个参数都必须为string类型vars.put(String key,String value); 
vars.putObject("abo",ab); //后面一个可以不为string,可以为整形或者其他
在beanshell中,source只能引用java文件,source(文件的路径);比如引用签名文件等。
props.put("aa","bb");//两个参数只能用string类型的,在调试后置处理器中要打开property为true才能打印出来数据
线程组之间参数的传递,利用函数助手中的__P函数生成参数,如:${__P(current_date,)},这个时候如果下个线程取到的值和生成的值不一样,需要在线程组界面勾选独立运行每个线程组的选项,勾选后必须第一个线程运行完后,下一个线程才会运行。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值