本文譯自https://www.guru99.com/jmeter-element-reference.html
JMeter中的元素是什么憾儒?
Jmeter中每種不同的組件統(tǒng)稱為元素。每種組件都為特殊的作用而設(shè)計乃沙,下圖展示了一些常用的公共元素:
學(xué)習(xí)JMeter中所有的元素需要花費大量時間航夺,本文我們主要討論常用的幾種類型元素,足夠解決日常大多數(shù)需求崔涂;其他不常使用的可以參考官方文檔阳掐。
本文主要討論如下元素,其他元素的詳細(xì)用法實例,會在后續(xù)文章中討論缭保。
Thread Groups 線程組
Samplers 取樣器(各種請求)
Listeners 監(jiān)聽器
Configuration 配置
Thread Groups(線程組)
線程組是多個線程的一個集合汛闸。每一個線程代表被測試系統(tǒng)上的一個獨立用戶,線程模擬一個真實用戶對被測試系統(tǒng)進(jìn)行請求艺骂。
舉個例子:
一個測試腳本中使用100個線程诸老,則表示JMeter模擬100個用戶對站點進(jìn)行請求。
Samplers (采樣器)
之前說到JMeter支持HTTP\FTP\JDBC\SMTP等各種協(xié)議的請求測試钳恕,也知道了線程組可以模擬多個用戶進(jìn)行測試請求别伏,但線程組是如何知道我們要發(fā)什么類型的請求呢?其實現(xiàn)就是依賴于samplers來做到的忧额。
FTP請求
讓我們假想一下厘肮,我們需要登陸一個ftp進(jìn)行下載、上傳文件時睦番,應(yīng)該如何測試呢类茂?JMeter中提供的ftp request類型的采樣器就可以幫我們實現(xiàn)如下目的。
我們可以新建一個FTP Request配置對應(yīng)的參數(shù)如下托嚣;
上述配置將實現(xiàn)巩检,發(fā)送FTP請求到ftp.example.com的Server端,使用默認(rèn)端口21示启,使用用戶名和密碼兢哭,下載Text.txt這個文件到本地。
HTTP Request
HTTP請求是最常使用的組件之一夫嗓∠闷埃可以模擬用戶對HTTP服務(wù)器發(fā)送請求,并支持http header\cookies等管理啤月。假如我們請求google,對方返回response和其他資源(image)劳跃,其過程如下圖:
具體的使用將在后續(xù)文章的實例中使用谎仲。
JDBC Request
JDBC請求用來測試數(shù)據(jù)庫的情況; 模擬請求發(fā)送到SQL型和NoSQL型數(shù)據(jù)庫刨仑; 流程如下圖
舉個例子:
數(shù)據(jù)庫服務(wù)器上有個庫名testdb郑诺,存在表testtable,我們要查詢的結(jié)果為testresult杉武,使用本地數(shù)據(jù)庫服務(wù)器示例配置如下:
請求配置如下圖
Listeners
監(jiān)聽器是對測試的結(jié)果進(jìn)行監(jiān)聽和收集辙诞,以圖像、報表轻抱、樹形圖飞涂、日志等方式呈現(xiàn)測試結(jié)果。
Graph結(jié)果是按請求的時間來顯示測試結(jié)果,包括響應(yīng)時間较店、正確率士八、平均時間、總請求次數(shù)等參數(shù)
View Result Tree
查看結(jié)果樹梁呈,將響應(yīng)以html的格式展示如下
View Result in Table
表格形式查看響應(yīng)結(jié)果如下婚度,另外,統(tǒng)計報告官卡、聚合報表蝗茁,自動為線程組中請求與響應(yīng)進(jìn)行統(tǒng)計與聚合,以報告形式展示出來寻咒。
Configuration Elements
配置元素用來為Samplers設(shè)置不同的配置哮翘、數(shù)據(jù)化等前置條件; 主要功能:參數(shù)化(數(shù)據(jù)提供)仔涩、請求協(xié)議的數(shù)據(jù)準(zhǔn)備(http request header\ cookies manager\ TCP defualt等)忍坷,具體如下圖
具體每類的使用可以參考用戶手冊或官方網(wǎng)站實例。