性能測試基礎---jmeter基礎

·Jmeter的腳本構成:
Jmeter的腳本是由不少不一樣的組件構成,在Jmeter中,組件能夠分爲如下幾類:

·測試計劃:
是默認存在的組件,全部的Jmeter的組件都是依賴於測試計劃的。
在這個組件中,能夠設置全局變量,能夠設置線程組的啓動方式。正則表達式

·Threads:線程組件,又叫用戶組件,是Jmeter中的必加組件,是Jmeter用來控制線程計劃的。
有三個可選組件:線程組、setUp線程組、tearDown線程組。
這三類線程組本質上是同樣的,只有當多種線程組組件同時出如今一個測試計劃下時,會有執行順序的區別。
全部的setUp線程組是優先執行的,執行完畢以後,纔會執行線程組,最後纔會執行tearDown線程組。這個執行順序和組件在測試計劃下的前後順序無關。服務器

·線程組的設置:在Jmeter中,場景計劃就是線程組計劃。設置項以下:
·線程數:就是虛擬用戶數,即啓動的線程的最大數量。
·Ramp-up Period:該選項設置的是啓動全部線程所須要的總時間。
PS:在jmeter中,線程的啓動方式是平均啓動,每次啓動一個線程。
啓動的間隔時間N=RampUp/線程數
即每隔N秒啓動一個線程。
注意事項:該選項影響的僅僅是線程之間的啓動間隔時間,並不影響向服務器發送請求的頻率(發送請求的間隔時間)。測試

·循環次數:該選項設置的是每個線程循環執行當前線程組下的腳本的次數。

·調度器:
注意事項:
·調度器是在點擊啓動以後纔會生效。
·啓動延遲的優先級高於啓動時間。
·持續時間的優先級高於結束時間。
·線程結束的條件是知足循環次數or結束時間到達。線程

·Test Fragment:測試片斷
測試片斷下能夠添加的組件類型和線程組是徹底同樣的。
可是,位於測試片斷下的請求是不會主動執行的,而線程組下是會執行的。
位於測試片斷下的請求必須被調用纔會執行,調用方式有兩種:
·腳本內的調用:經過邏輯控制器裏面的 模塊控制器 組件實現調用。
·腳本外的調用:經過邏輯控制器裏面的 Include控制器 進行調用。代理

·邏輯控制器:就是用來控制組件的執行邏輯的。其本質就是圖形化的流程控制組件。
邏輯控制器只會控制其下的子組件。日誌

·配置元件:全局組件,通常來講就是用來服務於請求類組件的,提供一些額外的配置支持。作用域

·定時器:是和時間控制有關的組件。io

·前置處理器:運行在請求以前的處理器。

·Sampler:取樣器,又叫請求,其實就是各類不一樣協議的請求的模板。
屬於必選組件。模板

·後置處理器:運行在請求以後的處理器。
經常使用的就是正則表達式提取器監控

·斷言:運行在請求以後,用來對響應進行檢測的組件。

·監聽器:日誌組件,提供了各類日誌監控類的組件。

·非測試元件:這個和測試無關,其中最重要的就是http代理服務器組件,用於腳本的錄製。


注意事項:
在jmeter中,同一類型的組件的圖標是同樣的,通常咱們都會根據圖標去查看。


·做用域:在Jmeter中,配置元件、定時器、前置處理器、後置處理器、斷言和監聽器這六大類組件都是用來服務Sampler(取樣器、請求)。這六類組件的運行機制都和做用域這個概念有關。

·定義:做用域就是組件的做用範圍,通常來講,受到做用域影響的組件只會對父級組件、全部同級組件和同級組件的子組件有效。 其中: 定時器、前置處理器是運行在做用域內的每個請求以前,和前後順序無關。運行次數等於做用域內的請求的數量。 後置處理器、斷言是運行在做用域內的每個請求以後,和前後順序無關。運行次數等於做用域內的請求的數量。

相關文章
相關標籤/搜索