jmeter基礎概念

2022-09-15 02:06:11 字數 2549 閱讀 9162

jmeter介紹: 乙個非常優秀的開源的效能測試工具。

從效能工具的原理劃分

jmeter工具和其他效能工具在原理上完全一致,工具包含4個部分:

(1)負載發生器:用於產生負載,通常以多執行緒或是多程序的方式模擬使用者行為。

(3)資源生成器:用於生成測試過程中伺服器、負載機的資源資料。

(4)報表生成器:根據測試中霍地的資料生成報表,提供視覺化的資料顯示方式。

test plan (測試計畫):用來描述乙個效能測試,包含與本次效能測試所有相關的功能。也就說本的效能測試的所有內容是於基於乙個計畫的。

threads (users)執行緒 使用者

1) setup thread group  

一種特殊型別的threadgroup的,可用於執行**試操作。這些執行緒的行為完全像乙個正常的執行緒組元件。不同的是,這些型別的執行緒執行測試前進行定期執行緒組的執行。

2) teardown thread group.  

一種特殊型別的threadgroup的,可用於執行測試後動作。這些執行緒的行為完全像乙個正常的執行緒組元件。不同的是,這些型別的執行緒執行測試結束後執行定期的執行緒組。

可能你還是不太理他們與普通的執行緒組有什麼不同。 如果您用過junit,想必你不會對setup ,teardown這2個字眼陌生。 即時每用過,也沒關係。 熟悉loadrunner的應該知道,loadrunner的指令碼除了action裡是真正的指令碼核心內容,還有初始化「環境」的初始化指令碼和測試完畢後對應的清除資訊的指令碼塊。 那麼這裡 setup thread group 和 teardown thread group 就是分別指這兩部分。  其實從本質上來看,他們並沒有什麼不同。

3) thread group(執行緒組).

這個就是我們通常新增執行的執行緒。通俗的講乙個執行緒組,,可以看做乙個虛擬使用者組,執行緒組中的每個執行緒都可以理解為乙個虛擬使用者。執行緒組中包含的執行緒數量在測試執行過程中是不會發生改變的。

測試片段元素是控制器上的乙個種特殊的執行緒組,它在測試樹上與執行緒組處於乙個層級。它與執行緒組有所不同,因為它不被執行,除非它是乙個模組控制器或者是被控制器所引用時才會被執行。

控制器jmeter有兩種型別的控制器:取樣器(sample)和邏輯控制器(logic controller),用這些原件來驅動處理乙個測試。

取樣器(sample)是效能測試中向伺服器傳送請求,記錄響應資訊,記錄響應時間的最小單元,jmeter 原生支援多種不同的sampler ,如 http request sampler 、 ftp  request sample 、tcp  request sample 、jdbc request sampler 等,每一種不同型別的 sampler 可以根據設定的引數向伺服器發出不同型別的請求

邏輯控制器,包括兩類元件,一類是用於控制test plan 中 sampler 節點傳送請求的邏輯順序的控制器,常用的有 如果(if)控制器 、switch controller 、runtime controller、迴圈控制器等。另一類是用來組織可控制 sampler 來節點的,如 事務控制器、吞吐量控制器。

配置元件(config element)用於提供對靜態資料配置的支援。csv data set config 可以將本地資料檔案形成資料池(data pool),而對應於http request sampler和 tcp request sampler等型別的配製元件則可以修改sampler的預設資料。(例如,http cookie manager 可以用於對 http request sampler 的cookie 進行管理)

定時器(timer)

定時器(timer)用於操作之間設定等待時間,等待時間是效能測試中常用的控制客戶端qps的手端。類似於loadrunner裡面的「思考時間」。jmeter 定義了bean shell timer、constant throughput timer、固定定時器等不同型別的timer

前置處理器(per processors)

用於在實際的請求發出之前對即將發出的請求進行特殊處理。例如,http url重寫修復符則可以實現url重寫,當rul中有sessionid 一類的session資訊時,可以通過該處理器填充發出請求的實際的sessionid 。

後置處理器(post processors)

用於對sampler 發出請求後得到的伺服器響應進行處理。一般用來提取響應中的特定資料(類似loadrunner測試工具中的關聯概念)。例如,xpath  extractor 則可以用於提取響應資料中通過給定xpath 值獲得的資料。

斷言(assertions)

斷言用於檢查測試中得到的相應資料等是否符合預期,斷言一般用來設定檢查點,用以保證效能測試過程中的資料互動是否與預期一致。

***(listener)

這個***可不是用來監聽系統資源的元件。它是用來對測試結果資料進行處理和視覺化展示的一系列元件。 圖行結果、檢視結果樹、聚合報告。都是我們經常用到的元件。

Jmeter基本概念

術語 2 取樣器 sampler 可以認為所有的測試任務都由取樣器承擔,有很種,如 http 請求。3 斷言 對取樣器返回的請求結果給出判斷,是否正確。4 monitor 它的功能是對取樣器的請求結果顯示 統計一些資料 吞吐量 kb s 等。1 測試計畫是使用 jmeter 進行測試的起點,它是其它...

JMeter指令碼開發基礎

jmeter執行順序規則如下 配置元件 前置處理器 定時器取樣器 後置處理器 除非伺服器響應為空 斷言 除非伺服器響應為空 除非伺服器響應為空 作用域規則 jmeter測試樹中既包含遵循分層規則的測試元件,又包含遵循順序規則的測試元件。有些測試元件在測試樹中嚴格遵循分層規則 配置元件 後置處理器 前...

Jmeter 效能測試基礎

瀏覽器訪問 b s架構 jmeter官網 jmeter組成 取樣器進行指令碼的邏輯控制 執行緒組場景設定 監視器監視指令碼的執行,取得效能指標 新增虛擬使用者組 執行緒組 新增被測頁面 取樣器 新增結果 監視器 參見jmeter入門教程 使用badboy 進行錄製 使用 方式 業務流程 新增 配置元...