Jmeter常用的邏輯控制器


一、ForEach控制器

作用:ForEach Controlle一般和用戶自定義變量(User Defined Variables)一起使用,其在用戶自定義變量中讀取一系列相關的變量。每一個線程下執行時該控制器下的采樣器或控制器都會被執行一次或多次(次數和用戶變量有關)。輸入應包括的幾個變量,每個變量由變量名、下划線、和數字組成,每個變量必須有一個值,例如,當輸入名字為:inputVar的變量時,定義如圖所示的用戶變量:

ForEach Controlle如圖: 

 

參數含義:

Input Variable Prefix:輸入變量前綴,本例中為:inputVar 

Output variable name:輸出變量名稱,提供給其它控件引用 

Start index for loop(exclusive):循環開始的索引(默認從0開始,如果填寫是2,實際是從2+1個開始執行) 

End index for loop(inclusive):循環結束的索引(默認從0開始,如果填寫是2,實際是從2+1個開始執行) 

Add””before number:輸入變量名稱中是否使用“”進行間隔。

--------------------- 

使用:使用${輸出變量名}進行引用,可以取到對用戶變量遍歷的值。

如下圖請求里的引用:

設置兩個線程,查看結果樹,結果為:1、2、3、4、1、2、3、4

二、循環控制器

作用:指定其子節點運行的次數,可以使用具體的數值(如下圖,設置為5次),也可以使用變量

  1、Forever選項:勾選上這一項表示一直循環下去

  2、如果同時設置了線程組的循環次數和循環控制器的循環次數,那循環控制器的子節點運行的次數為兩個數值相乘的結果。

       循環過程中取值不會改變。

 

三、僅一次控制器

作用:在測試計划執行期間,該控制器下的子結點對每個線程只執行一次,登錄場景經常會使用到這個控制器。

注意:將Once Only Controller作為Loop Controller的子節點,Once Only Controller在每次循環的第一次迭代時均會被執行。 

【僅對循環和迭代起作用,對線程組不起作用】如下圖設置3個線程數,請求2還是執行了3次。

 

四、事物控制器

作用: 事務控制器會生產一個額外的采樣器,用來統計該控制器子結點的所有時間。

 

參數:

  • Generate parent sample:(選中這個參數結果展示如下圖紅框,否則顯示為下圖藍框)
  • Include duration of timer and pre-post processors in generated sample:選中這一項會統計定時器(timer)的時間,否則只統計采樣器(sample)的時間

參數1

 

參數2

五、簡單控制器

作用:這是Jmeter里最簡單的一個控制器,它可以讓我們組織我們的采樣器和其它的邏輯控制器(分組功能),提供一個塊的結構和控制,並不具有任何的邏輯控制或運行時的功能。 

六、吞吐量控制器(不常用,但是有個特殊用法)

作用:控制其下的子節點的執行次數與負載比例分配,也有兩種方式:

  • 參數1:Total Executions:設置運行次數,
  • 參數2:Percent Executions:設置運行比例(1~100之間)

 

 










免責聲明!

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



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