jmeter單點登錄跨線程組使用cookie


最近在學習jmeter性能測試,發現單點登錄模式下,跨線程組使用cookie在獲取cookie是比較困難,這個不是從登錄接口獲取cookie,而是在登錄后自動單點登錄跳轉到相應頁面時,取跳轉后的cookie信息。下面總結下我使用分析的小心得,希望對大家能有幫助。

  • 為了學習jmeter一些相關工具,我使用badboy錄制功能來完成這個接口及相關頁面的抓取。錄制成功后首先保存為.bx文件。然后輸出為jmeter文件,具體操作如下:   

 

 

 

  • 打開jmeter,去除一些重復或者錄制過程中沒必要的文件。
  • 將所有錄制的文件做分類,如下所示:

 

 

 

  • 公司每個功能模塊是用單點登錄的方式實現的,我首先實現cookie信息獲取。
  1. 先在apache-jmeter-5.1.1\bin文件夾下的jmeter.properties  文件中找到“CookieManager.save.cookies”將它的值改為true(圖一);
  2. 添加HTTP cookie管理器(圖二、圖三),不需要填寫任何信息。

             

 (圖一)

 

 

 (圖二)

 

 

 

  (圖三)

這時已經可以獲取到cookie信息了,在同一個線程組下面可以使用。但是跨線程組是不行的。那么就要分析獲取具體的cookie信息。

 

  • 分析發現要獲取的cookie信息,並不是登錄接口返回的cookie信息,而是登錄后第一次跳轉后的cookie信息----我們公司是登錄后通過單點登錄到每個應用模塊中。(通過F12抓包分析每次單點登錄時傳遞的cookie信息值)
  1.   右鍵---添加----后置處理器----正則表達式提取器。提取cookie信息(圖四、圖五)
  2. 添加調試取樣器,添加結果樹,運行后,查看cookie取值情況。(圖六)
  3. 根據取值信息,添加bell預處理程序設置參數,以用於使用獲取的cookie值。(圖七)
  4. 設置全局作用的HTTP COOKIE managment ,並使用第3步獲取的cookie值(圖八)

 

 (圖四) 

 

(圖五)

 

 

 (圖六)

 

 

 (圖七)

 

 

 

 

 

 

 

 

  (圖八)

  • 設置好cookie以后,就開始正式使用,添加線程組,之前錄制的頁面、接口等移動進來(圖九)。
  • 添加結果樹,查看接口是否請求成功、添加調試取樣器,查看是否生產cookie信息(有取到具體cookie信息,才能返回cookie信息。)。(圖九、圖十)
  • 接口信息返回正確。如圖說示(圖十一)
  • 如果沒有cookie信息,會跳轉到登錄頁面(圖十二)

 

 (圖九)

 

 (圖十)

 

 

 (圖十一)

 

 

 (圖十二)

 


免責聲明!

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



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