jmeter連接數據庫和提取數據庫返回值


一、在MySQL命令行中,驗證MySQL是否能正常登陸。若不能登陸,則重置MySQL的密碼。

 

 二、下載mysql-connector-java-5.1.45-bin.jar,將其放入Jmeter安裝目錄的lib目錄下。完成MySQL數據庫的驅動。

 

 三、右鍵“線程組”->“配置元件”->“JDBC Connection Configuration”,進行JDBC連接配置。

 

四、以MySQL數據庫為例,配置JDBC: Driver class: com.mysql.jdbc.Driver

              Database URL: jdbc:mysql://localhost:port/{dbname}

 

 五、JDBC Request配置,右擊”線程組”,添加一個”JDBC Request”,添加”察看結果樹”。

 

Variable Name:數據庫連接池的名字,需要與JDBC Connection Configuration的Variable Name Bound Pool名字保持一致

Query:填寫的sql語句未尾不要加“;”

 

Parameter valus:參數值

Parameter types:參數類型

Variable names:保存sql語句返回結果的變量名

Result variable name:創建一個對象變量,保存所有返回的結果

Query timeout:查詢超時時間

 

六、運行該線程組,”察看結果樹”顯示為下圖所示的界面,則連接MySQL數據庫成功。

 

 七、Variables names參數使用

variables names設置為A,,C,那么如下變量會被設置為:

  A_#=2 (總行數)
  A_1=第1列, 第1行
  A_2=第1列, 第2行 
  C_#=2 (總行數) 
  C_1=第3列, 第1行
  C_2=第3列, 第2行

  如果返回結果為0,那么A_#和C_#會被設置為0,其它變量不會設置值。

  如果第一次返回6行數據,第二次只返回3行數據,那么第一次那多的3行數據變量會被清除。

  可以使用${A_#}、${A_1}...來獲取相應的值。

示例

有一張表有3個字段,4條記錄

1)添加一個jdbc request名為select4,添加一個Debug Sampler用來查看輸出的結果,設置 variables name為a,b,c:

2)執行結果:

 

案例:現在有個登錄請求,需要從MySQL數據庫中取出用戶登錄表中的username字段作為參數,實現參數化關聯。

1、 添加JDBC Request

 

2、在http請求中加入變量

username_id_N:N為數字,指取第幾個數

 

 3、添加察看結果樹

 

 4、添加循環控制器,“線程組”->“邏輯控制器”->“循環控制器”

 

 

5、將登錄請求放入到循環控制器下,另外添加一個計數器,因為我們取的值是根據${username_N}來取的,那么這個N可以通過計數器遞增的方式獲得。

“循環控制器”->“配置元件”->“計數器”

 

 

 6、通過函數助手獲取嵌套函數 __V

 

 7、運用在登錄請求的參數中

 

最后執行登錄請求,查看結果。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM