JMeter數據庫操作詳解
Jmeter提供了JDBC連接的插件,通過執行SQL語句的java API,實現對數據庫的訪問和查詢。
一、安裝驅動包
將需要連接JDBC的jar包放入jmeter安裝文件的lib文件中(也可測試計劃中的導入)
二、配置JDBC Connection configuration
右鍵線程組→添加→配置元件→JDBC Connection configuration
Variable Name:數據庫連接池的名稱,在使用JDBC Request時通過該連接池名稱進行連接,因此在使用JDBC Request時輸入的連接池名稱要與JDBC Connection Configuration中的一致。
Connection Pool Configuration中定義了基本配置,可以設置其為默認值。主要需要關註的是Database Configuration中的配置:
Database URL:為數據庫的URL,jdbc:mysql://服務器地址:監聽端口/數據庫名稱
JDBC Driver class:JDBC驅動。一般為com.mysql.jdbc.Driver 或 ort.gjt.mm.mysql.Driver
Username:數據庫的用戶名
Password:數據庫密碼
三、設置JDBC RequestVariable Name:數據庫連接池的名稱;
Query Type:查詢類型。例如,使用select查詢時使用Select Statement,使用delete刪除表時使用Update Statement;
Query:在此可以使用數據庫操作語句
Parameter Name:引用的參數值
Parameter Type:引用參數值的類型
Variable name:使用sql語句返回的變量名
Result Variable name:定義一個參數的名稱用於保存sql查詢結果的返回值
Query time:設置定時器時間
Handle Result:參數保存時的保存類型
四、參數化的使用方法
方式一:使用${變量名},例如:select * from table1 where pwd=${password};
變量password可以通過用戶自定義變量中設置,或者通過其他響應報文中提取出來的值
方式二:使用Parameter Name
使用占位符?來代替參數值,在Parameter Name中填入參數值,嚴格限制參數值的順序。而Parameter Type中填入的是相對應的參數值類型
方式三:使用Variable names
在Variable names中設置的變量名對應代表了數據庫中相應的列,利用逗號隔開,如A1代表第一列的所有內容,A3代表第三列的所有內容。若要取第一列第二行的內容,則可以用A1_2表示;
若要取得A1列的總行數,則用A1_#表示,在外部引用該變量時可以直接利用${A1_2}獲取,此時取的是第一列第二行的內容。
下面利用BeanShell來打印A3_1和A1_#的值,即取第三行第一列的值和取第一列的行數
通過查看控制臺得:
附:數據庫連接driverClass和jdbcUrl大全
一、Mysql:
driverClass:com.mysql.jdbc.Driver
org.gjt.mm.mysql.Driver
jdbcUrl:jdbc:mysql://192.168.0.1:3306/yourDBName
二、oracle
(thin模式)
driverClass:oracle.jdbc.driver.OracleDriver
jdbcUrl:jdbc:oracle:thin:@192.168.0.1:1521:yourDBName
三、SQL Server:
driverClass:com.microsoft.sqlserver.jdbc.SQLServerDriver(2005版本及以後)
com.microsoft.jdbc.sqlserver.SQLServerDriver(2000版本)
jdbcUrl:jdbc:sqlserver://192.168.0.1:1433;databasename=yourDBName
四、Sybase:
driverClass:com.sybase.jdbc3.jdbc.SybDriver
com.sysbase.jdbc.SybDriver
jdbcUrl:jdbc:sybase:Tds:127.0.0.1:5007/myDB
五、DB2:
1、db2java.zip
driverClass:COM.ibm.db2.jdbc.NET.DB2Driver
jdbcUrl:jdbc:db2://127.0.0.1:5000/DBNAME
2、db2jcc.jar
driverClass:com.ibm.db2.jcc.DB2DriverjdbcUrl:jdbc:db2://127.0.0.1:5000/DBNAME
3、driverClass:com.ibm.db2.jdbc.app.DB2DriverjdbcUrl:jdbc:db2://127.0.0.1:5000/yourDBName
JMeter數據庫操作詳解