Jmeter中JDBC Connection Configuration实现MySQL JDBC Request数据库处理
?
?
一、JDBC Connection Configuration數(shù)據(jù)庫(kù)配置元件
線程組-添加-配置元件-JDBC Connection Configuration
Name:元件命名空間,請(qǐng)隨意
Comments:注釋,請(qǐng)隨意
Variable Name:數(shù)據(jù)庫(kù)連接池的名稱,因?yàn)橐粋€(gè)測(cè)試計(jì)劃可以有多個(gè)JDBC Connection Configuration,每個(gè)可以取不同的名稱,
值得注意的是,在jdbc request中可以通過(guò)這個(gè)名稱選擇合適的連接池進(jìn)行使用。
Connection Pool Connetion:連接池參數(shù)配置,基本保持默認(rèn),根據(jù)需要進(jìn)行修改;
Max Number of Connections: 最大連接數(shù);如果做性能時(shí),建議填0,如果默認(rèn)為10,最大只能連接10個(gè)線程;
Max Wait(ms):最大等待時(shí)間,單位毫秒;
Time Between Eviction Runs(ms):有空閑的線程數(shù),釋放不使用的線程;
Auto Commit:自動(dòng)提交,默認(rèn)為true,如修改數(shù)據(jù)庫(kù)時(shí),自動(dòng)commit;
Transaction isolation:事務(wù)隔離(默認(rèn));
Connection Validation by pool:驗(yàn)證連接池;
Test While idle:
Soft Min Evictable Idle Time(ms):
Validation Query:
Database Connection Configuration:數(shù)據(jù)庫(kù)連接配置:
Database URL:數(shù)據(jù)庫(kù)連接url;MySQL格式【jdbc:mysql://host_ip:端口號(hào),默認(rèn)3306/數(shù)據(jù)庫(kù)名稱】
JDBC Driver class:數(shù)據(jù)庫(kù)驅(qū)動(dòng);com.mysql.jdbc.Driver
Username:數(shù)據(jù)庫(kù)登錄用戶名
Password:數(shù)據(jù)庫(kù)登錄密碼
?
二、JDBC Request?數(shù)據(jù)庫(kù)請(qǐng)求元件
線程組-添加-取樣器-JDBC Request
Name:組件名稱,請(qǐng)隨意,最好有業(yè)務(wù)意義;
?Comments:注釋,請(qǐng)隨意;
?Variavle Name Bound to pool:數(shù)據(jù)庫(kù)連接池名稱,需要和JDBC Connection Configuration保持一致。
?
?SQL Query:sql查詢
?Query Type:查詢類型;
????select statement:只能執(zhí)行查詢語(yǔ)句select,執(zhí)行第一條sql語(yǔ)句
?? ?update statement:增刪改sql:insert into、update set、delete from
? ? Callable statement:執(zhí)行多條sql語(yǔ)句,分號(hào)隔開,調(diào)用存儲(chǔ)過(guò)程的語(yǔ)句;call add_age(); 傳值輸入或null或?,有多個(gè)參數(shù)就逗號(hào)分開?,?,?
?? ?Prepared select statement: 只對(duì)select語(yǔ)句的批處理,使用?占位符
? ? Prepared update statement:對(duì)insert、update、delete語(yǔ)句批處理,使用?占位符
?
Paramater value:針對(duì)statement語(yǔ)句,?占位符,輸入轉(zhuǎn)給?的值;對(duì)應(yīng)statement有多少個(gè)?就給多少個(gè)值;
Paramater Type:給上面值的類類型,多個(gè)用逗號(hào)隔開,int=integer,如果占位符?是字符串就用varchar,
Variable names:保存sql語(yǔ)句返回結(jié)果的變量名,例如:有多少列;就設(shè)置多少個(gè)參數(shù),用逗號(hào)隔開
假如,sql語(yǔ)句返回2行,3列,且variables names設(shè)置為A,B,C,那么如下變量會(huì)被設(shè)置為:
A_#=2 (總行數(shù))?
A_1=第1列, 第1行?
A_2=第1列, 第2行
C_#=2 (總行數(shù))
C_1=第3列, 第1行?
C_2=第3列, 第2行
?Result variable name:存儲(chǔ)結(jié)果集,將每行存儲(chǔ)成且可以轉(zhuǎn)化成json格式的
tips:運(yùn)行結(jié)果將會(huì)以多個(gè)map形式的list保存在所設(shè)置的變量中,結(jié)果中的列名作為map的key值,列的值作為map的value;使用方法columnValue = vars.getObject("result變量值").get(0結(jié)果集第一行的數(shù)據(jù)從0開始).get("Column Name第一行數(shù)據(jù)庫(kù)字段名稱一致");
??Query timeout(s):查詢超時(shí)
??Handle Result Set:保存結(jié)果類型
?
三、實(shí)例
1、jmeter查詢多條sql語(yǔ)句
2、jmeter插入sql語(yǔ)句
例:制造1w條數(shù)據(jù)進(jìn)行測(cè)試
放入1條sql語(yǔ)句,參數(shù)化各個(gè)字段,循環(huán)1w次,或并發(fā)1w次,很快就造好數(shù)據(jù)了
?
總結(jié)
以上是生活随笔為你收集整理的Jmeter中JDBC Connection Configuration实现MySQL JDBC Request数据库处理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 测试管理 | 基于风险的测试
- 下一篇: mysql给用户授权最大_mysql 给