jmeter執行順序


本章節主要講解“JMeter執行順序與作用域”的內容,類似於運算符或操作符的優先級,當JMeter測試中包含多個不同的元素時,哪些元素先執行,哪些元素后執行,並不是嚴格按照它們出現的先后順序依次有序執行的,而是會遵循一定的內部規則,我們稱之為JMeter元素的執行順序。

 

一.執行順序

 

一般情況下JMeter元素按照如下順序依次執行:

  • 0、 配置元件(Config Element) 
  • 1、前置處理器(Pre Processors) 
  • 2、定時器(Timer) 
  • 3、取樣器(Sampler) 
  • 4、后置處理器(Post Processors) 
  • 5、斷言(Assertions) 
  • 6、監聽器(Listener)

 

  • 注意,只有取樣器結果不為空的情況下才會執行4、5、6。

 

一個簡單的例子:

 

二.組件作用域

 

1、JMeter測試樹元素分類

  • 在JMeter的GUI界面,測試計划就是一顆樹,Test Plan是樹的根節點,其他元素都是其子孫從作用域的角度來看,測試樹中的元素可以分為兩大類:

 

01、具有層次結構的元素

  • 這類元素的作用域與其所處的層次有關.
  • 這類元素包括:配置元件,前置處理器,定時器,后置處理器,斷言,監聽器這6大組件.

 

02、具有順序結構的元素

  • 這類元素一般嚴格按照其出現的先后順序依次有序的執行.
  • 這類元素不會對其他元素的功能有影響,只是起控制作用,沒有作用域的概念.這類元素包括取樣器與邏輯控制器.

 

另外,還有剩下的線程組比較特殊,線程組也不會影響其他元素的功能,但是線程組的執行順序是可以配置的,若測試計划下包含多個線程組,默認是並行執行的,若要按照其出現的順序依次執行,需要在測試計划下勾選"Run Thread Groups consecutively (i.e. one at a time)".

 

2、作用域

  • JMeter組件作用域指的是JMeter組件(配置元件,前置處理器,定時器,后置處理器,斷言,監聽器)起作用的范圍,在此范圍內組件是有效的,可以影響取樣器的行為.
  • 從前面的內容可以看出,JMeter作用域是針對組件而言的,只有層次結構的組件才有作用域的概念.

 

3、JMeter組件作用域規則

  • 按照組件的父節點不同,組件的作用域有如下類型:

 

(1)取樣器作用域

  • 父節點為取樣器的組件具有的作用域,僅對該取樣器起作用;

 

(2)邏輯控制器作用域

  • 父節點為邏輯控制器的組件具有的作用域,對該邏輯控制器下的所有取樣器起作用;

 

(3)線程組作用域

  • 父節點為線程組的組件具有的作用域,對該線程組下的所有取樣器起作用;

 

(4)測試計划作用域

  • 父節點為測試計划的組件具有的作用域,對測試計划下的所有取樣器起作用。

 

1,如果在一個線程組里則是順序執行

2,如果不在一個線程組里,就勾選獨立運行各個線程組,在一個運行結束后啟動下一個線程組

多個http請求產生的各自的聚合報告數據
在形成的聚合報告中,發現只有一行http請求統計數據,無法確定是哪一個http請求的測試結果,還是兩個請求測試結果的綜合數據。

 

 


於是上網搜相關資料,從jmeter官網中發現以下解釋:

If other samplers and timers are in the same thread, these will increase the total time, and therefore reduce the throughput value. So two identical samplers with different names will have half the throughput of two samplers with the same name. It is important to choose the sampler labels correctly to get the best results from the Report.

大意是在同一線程組中,兩個同名 samplers得出來的吞吐量值會是兩個不同名samplers的兩倍,改成不同label,將會有如下效果,即有多條記錄。(截圖來自jmeter官網)

 

 

注意,Aggregate Report 和 Summary Report運行結果都是累加的,因此,在每次運行測試前,先清空上一次運行結果。

 

 

https://blog.csdn.net/HelloGuoYing/article/details/110923975?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1.pc_relevant_default&utm_relevant_index=1

https://zhuanlan.zhihu.com/p/403415035

https://www.cnblogs.com/longlongleg/p/15247812.html


免責聲明!

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



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