jmeter 邏輯控制器
阿新 • • 發佈:2021-12-31
Simple Controller-簡單控制器
你可以將其簡單的理解為單元的意思或者分組的意思,它不提供什麼意義,不改變元件的執行順序。(可以在裡面繼續新增控制器)你可以並它來規範你的元件,規範指令碼。
使用它養成良好的習慣。
右鍵【新增】-【邏輯控制器】-【簡單控制器】
Include Controller-包含控制器
右鍵【新增】-【邏輯控制器】-【Include Controller】可以用它來匯入外部的指令碼。
檔名填入指令碼的路徑。相當與引入了一個封裝的執行單元。
注意:這個引入的指令碼不能包含執行緒,只能是元件和控制器。
Runtime Controller
右鍵【新增】-【邏輯控制器】-【Runtime Controller】
用來控制其子元件的執行時長。
當選擇為0的時候,其下面的元件將不再執行。
設定執行時長可以控制某些請求不需要一直髮送,在有些綜合場景中可以用到。
Switch Controller
Switch 條件控制器右鍵【新增】-【邏輯控制器】-【Switch Controller】
switch value就是你要指定執行的元件。我的控制器下面有6個元件,依次是:百度首頁,百度新聞,百度文庫,百度經驗,百度音樂,百度知道。
其中元件的編號是從0開始的,所以是0,1,2,3,4,5
我現在指定2,執行一下,看看結果。
編號為3的正好是百度文庫,這就是switch條件控制器的作用。當swicth不指定或者超出元件編號範圍的,執行編號為0也就是第一個元件。
Loop Controller
迴圈控制器。右鍵【新增】-【邏輯控制器】-【迴圈控制器】
它用來控制元件的迴圈次數。在測試中用到的次數也不少。因為有的元件你可以單獨控制其迴圈次數。
例如,這裡我指定迴圈次數是10,但是我的執行緒組迴圈次數是2.
(我先把switch controller註釋掉,箭頭指的地方就是註釋按鈕)
執行一下看看效果。共計傳送了20個請求,也就是最終執行次數是runtime的次數×執行緒組的迴圈次數。
Only Once Controller
僅一次控制器。這個也是很有用處的。在loadrunner中有init初始化的Action,這個就可以起到這個作用。
(如果你設定的執行緒組的迴圈次數>1)
右鍵【新增】-【邏輯控制器】-【僅一次控制器】
我線上程組下面加上一個僅一次控制器,將百度文庫的請求放在裡面。 執行緒組的迴圈次數調成10,再來執行一次,檢視結果。只執行了一次。
這個就類似,登入只做一次一樣。將初始化的請求放在這裡面。
Random Controller
隨機控制器。右鍵【新增】-【邏輯控制器】-【隨機控制器】
將所有的元件,全部放在這裡面來,執行檢視結果。
我的執行緒組迴圈次數是10,執行的結果,可以看到每次都是隨機執行了一個元件。 Random Order Controller隨機順序控制器。它與隨機控制器的區別就是:雖然是隨機的,但是每個元件都會執行一次。
上面的執行結果,百度新聞是沒有訪問的。