jmeter 跨線程傳參獲取不到值


問題:跨線程傳遞參數,在本線程提取到了值,但跨線程后一直提取不到。
解決:在Test Plan 頁面勾選“獨立運行每個線程組(例如在一個組運行結束后啟動下一個)”

背景:我創建了2個線程組,在a線程組里面提取值傳到b線程組使用,使用正則表達式提取的參數在本線程能使用,但是傳到另一個線程組一直獲取不到值。

我的步驟是:

1. 使用正則表達式提取器,提取參數,在當前線程組查看提取的參數是否正確,是否能使用。

 

2.創建Beanshell 后置處理程序(下面這段是參考https://www.jianshu.com/p/f67e27af6cb6的)

String project_id=bsh.args[0]; //獲取Bean Shell PostProcessor接收到的參數的第一個值
print(project_id);
${__setProperty(request_project_id,${project_id},)}; //調用函數__setProperty,把Bean Shell PostProcessor中的project_id的值賦值給request_project_id,並設置request_project_id為jmeter內置屬性

  

3.在另一個線程組里調用 "room_id":"${__P(request_room_id,)}"

 

以上的步驟檢查了都沒問題,但是參數就是傳遞不過去。

后來我嘗試在a線程組里面,將參數修改成aaa,然后去b線程看是否返回,發現傳遞成功了。那就是說參數是傳遞過去了,那會是什么問題呢?

此時群里面有人回答我的問題,讓我嘗試在 TestPlan 里面勾選:獨立運行每個線程組(例如在一個組運行結束后啟動下一個)

解決!!!

 


免責聲明!

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



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