jmeter不同線程組間的cookie傳遞


  最近使用jmeter測試接口並發,所測接口需要登錄后才可執行,開始嘗試把登錄和接口執行寫到一個線程組中,但是發現在並發執行時,單點登錄容易報錯,故改成登錄單獨線程組。分線程組后,由於cookie管理器所存的cookie只能在同一線程組共享,不同組無法共享,需要進行cookie的傳遞,特將傳遞方法記錄如下:

  1. 取出登錄線程組的cookie

  •   首先更改jmeter.properties配置文件中CookieManager.save.cookies=true(注意更改后,將前面的’#’去掉),然后重啟jmeter,
  •   在登錄線程組中,添加cookie管理器
  •   接下來,添加 BeanShell Sampler 或 BeanShell PostProcessor ,使用COOKIE_para(para代表cookie中參數名,如cookie中寫jsessionid=sju1d3e3ad322,則用COOKIE_jsessionid來取jsessionid的值)來取出cookie信息。

  2. 設置cookie值為jmeter property,以供全局調用

  • 在 BeanShell Sampler 或 BeanShell PostProcessor中,使用${__setproperty(jid,jsessionid.false)}設置全部屬性

  3. 在並發執行線程組,獲取cookie執行

  • 在接口頭信息中,設置cookie字段,值為jsessionid={__P(jid)}(如識別內容放在請求中的,直接拼接到URL中)


免責聲明!

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



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