Jmeter系列(55)- 詳解 Throughput Controller 吞吐量控制器
阿新 • • 發佈:2020-08-20
如果你想從頭學習Jmeter,可以看看這個系列的文章哦
https://www.cnblogs.com/poloyy/category/1746599.html
簡單介紹
自行調整該控制器下的子項的執行頻率
吞吐量控制器
吞吐量控制器介面介紹
有了兩個模式
- percent execution:按照百分比來執行
- total executions:按照次數來執行
欄位說明
Throughput
- 對於 percent execution:0-100,代表執行次數的百分比,比如填 50,代表一半迭代中執行
- 對於 total executions:代表執行的總次數
Per User
- 若勾選,每個執行緒會單獨計算執行頻率
- 若不勾選(預設),所有執行緒統一計算執行頻率
注意事項
雖然名叫吞吐量控制器,但並不控制控制器,只是控制子項的執行頻率(次數)
Total Executions 的栗子
執行緒組結構樹
執行緒組屬性
吞吐量控制器
只執行 2 次
檢視結果樹
取樣器111 只執行了 2 次
Percent Executions 的栗子
執行緒組結構樹
執行緒組屬性
2 個執行緒,每個執行緒迴圈 4 次
吞吐量控制器
迴圈只執行 50%
檢視結果樹
- 取樣器222執行了 8 次,每個執行緒執行了 4 次
- 取樣器111只執行了 4 次,每個執行緒執行了 2 次
勾選 per user 的栗子
執行緒組結構樹
執行緒組屬性
2 個執行緒,每個執行緒迴圈 3 次
吞吐量控制器
只執行 2 次
檢視結果樹
- 取樣器222執行了 6 次,每個執行緒執行了 3 次
- 取樣器111只執行了 4 次,每個執行緒執行了 2 次
- 控制器對每個執行緒單獨生效
如果不勾選 Per User,結果樹會怎麼樣呢
- 取樣器222執行了 6 次,每個執行緒執行了 3 次
- 取樣器111總共只執行了 2 次,因為執行緒 1 先執行,所以只有執行緒 1 能執行取樣器111,而執行緒 2 不能執行
- 吞吐量控制器所有執行緒共享
結合迴圈控制器的栗子
執行緒組結構樹
- __iterationNum 會返回當前的迴圈次數
- __counter 計數器
執行緒組屬性
2 個執行緒,每個執行緒迴圈 2 次
迴圈控制器
吞吐量控制器
只執行 2 次
檢視結果樹
- 每個執行緒一共會執行 4 次
- sampler2 均會執行 4 次
- sampler1 均會執行 2 次,且都線上程第一次迴圈的時候,通過迴圈控制器迴圈兩次執行的