一、JDBC Connection Configuration数据库配置元件
线程组-添加-配置元件-JDBC Connection Configuration
Name:元件命名空间,请随意
Comments:注释,请随意
Variable Name:数据库连接池的名称,因为一个测试计划可以有多个JDBC Connection Configuration,每个可以取不同的名称,
值得注意的是,在jdbc request中可以通过这个名称选择合适的连接池进行使用。
Connection Pool Connetion:连接池参数配置,基本保持默认,根据需要进行修改;
Max Number of Connections: 最大连接数;如果做性能时,建议填0,如果默认为10,最大只能连接10个线程;
Max Wait(ms):最大等待时间,单位毫秒;
Time Between Eviction Runs(ms):有空闲的线程数,释放不使用的线程;
Auto Commit:自动提交,默认为true,如修改数据库时,自动commit;
Transaction isolation:事务隔离(默认);
Connection Validation by pool:验证连接池;
Test While idle:
Soft Min Evictable Idle Time(ms):
Validation Query:
Database Connection Configuration:数据库连接配置:
Database URL:数据库连接url;MySQL格式【jdbc:mysql://host_ip:端口号,默认3306/数据库名称】
JDBC Driver class:数据库驱动;com.mysql.jdbc.Driver
Username:数据库登录用户名
Password:数据库登录密码
二、JDBC Request 数据库请求元件
线程组-添加-取样器-JDBC Request
Name:组件名称,请随意,最好有业务意义;
Comments:注释,请随意;
Variavle Name Bound to pool:数据库连接池名称,需要和JDBC Connection Configuration保持一致。
SQL Query:sql查询
Query Type:查询类型;
select statement:只能执行查询语句select,执行第一条sql语句
update statement:增删改sql:insert into、update set、delete from
Callable statement:执行多条sql语句,分号隔开,调用存储过程的语句;call add_age(); 传值输入或null或?,有多个参数就逗号分开?,?,?
Prepared select statement: 只对select语句的批处理,使用?占位符
Prepared update statement:对insert、update、delete语句批处理,使用?占位符
Paramater value:针对statement语句,?占位符,输入转给?的值;对应statement有多少个?就给多少个值;
Paramater Type:给上面值的类类型,多个用逗号隔开,int=integer,如果占位符?是字符串就用varchar,
Variable names:保存sql语句返回结果的变量名,例如:有多少列;就设置多少个参数,用逗号隔开
假如,sql语句返回2行,3列,且variables names设置为A,B,C,那么如下变量会被设置为:
A_#=2 (总行数)
A_1=第1列, 第1行
A_2=第1列, 第2行
C_#=2 (总行数)
C_1=第3列, 第1行
C_2=第3列, 第2行
Result variable name:存储结果集,将每行存储成且可以转化成json格式的
tips:运行结果将会以多个map形式的list保存在所设置的变量中,结果中的列名作为map的key值,列的值作为map的value;使用方法columnValue = vars.getObject("result变量值").get(0结果集第一行的数据从0开始).get("Column Name第一行数据库字段名称一致");
Query timeout(s):查询超时
Handle Result Set:保存结果类型
三、实例
1、jmeter查询多条sql语句
2、jmeter插入sql语句
例:制造1w条数据进行测试
放入1条sql语句,参数化各个字段,循环1w次,或并发1w次,很快就造好数据了
此为临时链接,仅用于预览,将在短期内失效。
关闭