前提准備:先安裝jdbc驅動
將sqljdbc4.jar放置jmeter的安裝目錄/lib下;復制之后重新啟動jmeter;
1.測試計划—配置驅動程序
測試計划右下角,點擊瀏覽,選擇jdbc驅動
2.添加線程組
右擊測試計划——添加——Thread——線程組
3.添加配置元件JDBC Connection Configuration
4.配置JDBC Connection Configuration
Variable Name: 變量名稱,需要變量名綁定到池。需要唯一標識。與JDBC取樣器中的相對應,決定JDBC取樣的配置。簡單理解就是在JDBC request的時候確定去哪個綁定的配置。
MaxNumber of Connection: 數據庫最大鏈接數
PoolTimeout: 數據庫鏈接超時,單位ms
Idle Cleanup Interval (ms): 數據庫空閑清理的間隔時間,單位ms
Auto Commit:自動提交。有三個選項,true、false、編輯(自己通過jmeter提供的函數設置)
Transaction Isolation:
事務間隔級別設置,主要有如下幾個選項:(對JMX加解密)
【TRANSACTION_NODE 事務節點 、
TRANSACTION_READ_UNCOMMITTED事務未提交讀、
TRANSACTION_READ_COMMITTED事務已提交讀 、
TRANSACTION_SERIALIZABLE事務序列化 、
DEFAULT默認、
TRANSACTION_REPEATABLE_READ事務重復讀、
編輯】
Keep-Alive: 是否保持連接
Max Connection age (ms):最大連接時長,超過時長的會被拒絕
Validation Query:驗證查詢,檢驗連接是否有效(數據庫重啟后之前的連接都失效,需要驗證查詢)
需要配置的參數有:
(1)Variable Name:test 后續JDBC Request中也會用到這個值;
(2)Database URL:jdbc:sqlserver://192.168.1.2:1222;databaseName=DBname (DBname為數據庫名稱);
(3)JDBC Driver class:com.microsoft.jdbc.sqlserver.SQLServerDriver(sql2008之前的版本) (SqlServer固定寫法,每個數據庫的不一樣com.microsoft.sqlserver.jdbc.SQLServerDriver(sql2008));
(4)Username Password數據庫的用戶名和密碼;
Database URL的構成參照表(jmeter的help中也有)見下:
5.添加JDBC Request
6.配置JDBC Request參數
7.添加監聽器
查看結果樹在正式測試壓力的時候,要去掉,否則會由於IO的情況,使JMeter和系統都會變得很卡。切記。
8.運行,查看結果
9.第八步的結果是正常的話,刪除查看結果樹;設置線程組,選擇forever;添加聚合報告,點擊run按鈕,通過監控器——聚合報告,查看結果。
10.DB端壓步上去,調整當前JMeter的線程數,或者增加JMeter的測試機器數。
可能出現的問題:
1、出現:java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@127.0.0.1:1521:ORCL錯誤解決
原來是因為沒有加載包的緣故,關閉jmeter,然后將class12.jar復制到jmeter目錄下面的lib目錄中,重新啟動運行即可。
2、連接MySQL數據庫時,出現:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown character set: 'utf8mb4'錯誤
看起來似乎是設置字符的問題,后來在JDBC連接配置那里將Database URL加上字符編碼即可(?characterEncoding=UTF-8)
jdbc:mysql://127.0.0.1:3306/paydb?characterEncoding=UTF-8
3、出現:org.apache.avalon.excalibur.datasource.NoAvailableConnectionException: Could not create enough Components to service your request (Timed out).
出現這個原因是因為連接超時,增大Pool TimeOUT就可以了。
轉自:https://blog.csdn.net/qq_36260310/article/details/76179592
https://blog.csdn.net/qq_35451939/article/details/79728789