Jmeter 從資料庫查詢多個欄位,依次傳給登錄介面怎麼實現?

  • 2019 年 10 月 3 日
  • 筆記

問題背景:

博文“Jmeter 如何把資料庫的數據依次獲取作為參數傳入下一個請求?附栗子”某天有人留言如下:

看了下當時寫的文章,如果從資料庫查詢多個欄位,依次傳給登錄介面,確實不能合理實現,所以,特意整理出一篇文章

 

一、添加jdbc請求並設置變數,獲取資料庫多個欄位值

1、添加好JDBC Connection Configuration並做好資料庫連接配置

2、導入mysql驅動jar包

以上1、2操作不詳細整理了,參考之前博文“Jmeter 如何把資料庫的數據依次獲取作為參數傳入下一個請求?附栗子” 非常詳細

3、添加執行緒組-->右鍵執行緒組-->添加jdbc request,並做好設置

4、添加查看結果樹並運行;得到以下結果

ps:這裡為了舉例方便,並未獲取密碼的值,如果工作中有需要查庫獲取密碼,那麼需要找對應開發將密碼加密解密的程式碼部分導出一個jar包,並添加到jmeter的lib/ext下;另外自己添加BeanShell PostProcessor寫程式碼進行密碼解密

 

 

二、添加另一個jdbc請求,用於獲取member中的用戶總數

1、右鍵執行緒組-->添加一個jdbc請求,並設置變數count

2、運行,確認下用戶總數

 

 

三、添加循環控制器、計數器,實現循環讀取庫的多個欄位資訊,並傳遞到下一個登錄請求

1、添加循環控制器,用於所有用戶的循環運行

2、在循環控制器之下,添加計數器

3、在循環控制器之下,添加登錄請求,並進行嵌套變數引用

  • ${n}:這裡n為計數器得出的值,從1到${count_1},即值為1~25
  • _V函數: 若${__V(phone_${n})}中${n}=2, 則${__V(phone_2)}返回phone_2的值

4、點擊運行,所有用戶全部進行了登錄執行

 

Tags: