目的:使用JMeter工具中的JDBC Request控件,擷取并使用資料庫中的資料進行登入
配置:Jmeter + MySQL
步驟:
1. 這裡首先需要配置好Jmeter和MySQL
1)将mysql-connector-java.jar包拷貝到<jmeter的安裝目錄>\lib 檔案夾下。這個相當于Jmeter使用MySQL的一個驅動

2)在MySQL中建立好目标資料庫、表和資料
2. 打開Jmeter,添加線程組以及JDBC Connection Configuration。其中,配置如圖。這裡需要定義一個變量名(随便起一個,不過猜測這個變量名應該遵守Java規則);DataBase URL中填寫上一步中建立的資料庫的IP位址、端口号和資料庫名稱;JDBC Driver Class中的配置是固定寫法;使用者名和密碼即通路資料庫的使用者名和密碼
3. 當多個請求都用到同一個IP位址或域名時,可以添加“HTTP請求預設值”,并可設定協定或者編碼方式
4. 添加JDBC Request,讀取資料庫中的資料。其中,sql資料根據自己的業務需要填寫,這裡僅擷取帳号和密碼,用于後面的登入請求
5. 添加BeanShell PostProcessor,用于讀取和儲存從資料庫中擷取的變量
注意,這裡的vars是BeanShell中自己已有的變量,可以百度一下這個變量的用法~~~
6. 添加HTTP請求
7. 添加察看結果樹,然後運作,檢視結果
問題:
1.JDBC Request報錯"Cannot create PoolableConnectionFactory (The server time zone value 'xxx'... 解決方案參考:https://www.jianshu.com/p/23526221c8dc
在 JDBC Connection Configuration的Database URL中增加時區,例如:
jdbc:mysql://localhost:3306/abc?serverTimezone=UTC
2.在JDK8以後,安裝的驅動類似:mysql-connector-java-8.0.xx.jar。是以這裡的JDBC Driver class應該填寫為:
com.mysql.cj.jdbc.Driver