JMeter體系結構

JMeter簡介

JMeter是一款開源桌面軟件斋陪,用來模擬用戶負載來完成性能測試工作癌椿。JMeter可以對web進行測試躺坟,提供web錄制功能属桦,可以擴展JMeter功能來滿足特定的測試需求熊痴。

JMeter體系結構

名字解釋:

1.元件:代表JMeter工具菜單中的一個子菜單,比如HTTP請求聂宾,事務控制器果善,響應斷言等

2.組件:一組元件的集合

JMeter 體系結構:


把上圖拆解成一個三維空間,X空間分為5個維度系谐,Y空間分為2個維度巾陕,Z空間分為1個維度

X1-X5是負載模擬的一個過程,使用這些組件來完成負載的模擬

Y1包含的是負載模擬部分,負責模擬用戶請求

Y2是結果驗證部分鄙煤,負責驗證結果正確性

Z是負責結果的收集晾匠,只有一個組成部分 監(jiān)聽器,監(jiān)聽器可以放在線程組內(nèi)也可以放在線程組外梯刚。

JMeter基本原理是建立一個線程池混聊,多線程取樣器產(chǎn)生大量負載,在運行過程中通過斷言來驗證結果的正確性乾巧,通過監(jiān)聽器來記錄測試結果句喜,如果取樣器中有參數(shù)化的需求,可以通過X2中的配置元件或者前置處理器來完成沟于,如果有關聯(lián)需求咳胃,可以通過后置處理器來完成,如果我們想要設置運行場景旷太,比如模擬多少用戶展懈,運行多長時間,就設置線程組了如果我們想要模擬并發(fā)場景供璧,可以利用定時器來設置存崖;如果想要控制業(yè)務的執(zhí)行邏輯,比如登錄只運行一次可以用控制器來完成睡毒。

元件介紹:

X1取樣器:用來模擬用戶操作来惧,向服務器(被測系統(tǒng))發(fā)出http請求,WebService(SOAP演顾、? ? ? XML _RPC Request)請求或java請求等

X1斷言:用來驗證結果是否正確供搀,用一個預設的結果(值,表達式钠至,時間長短等條件)與實際結果匹配葛虐,匹配到則成功。反之失敗棉钧,較常用的是響應斷言

X1監(jiān)聽器:JMeter的測試結果需要添加監(jiān)聽器來收集屿脐,監(jiān)聽器有兩個任務 1是添加結果監(jiān)聽,并且可以保存測試結果到文件宪卿,這些結果數(shù)據(jù)可以供再次分析使用的诵,2是展示結果,JMeter可以以表格及圖形的形式展現(xiàn)結果

取樣器愧捕,斷言奢驯,監(jiān)聽器組合一起可以完成發(fā)送請求申钩,驗證結果次绘,記錄結果三項工作

X2前置處理器:在測試腳本開發(fā)過程中,在請求發(fā)送前會做一些環(huán)境或參數(shù)的準備工作,比如在對數(shù)據(jù)庫操作前需要先建立一個數(shù)據(jù)庫鏈接邮偎,那么就在前置處理器中完成這個功能

X2配置元件:性能測試中為了模擬大量用戶操作需要做參數(shù)化管跺,Jmeter的參數(shù)化可以通過配置元件來完成,比如CSV Data Set Config,可以幫助我們從文件中讀取測試數(shù)據(jù)禾进,還可以用來記錄服務器的返回數(shù)據(jù)豁跑,簡言之就是為取樣器提供預備數(shù)據(jù),然后由取樣器發(fā)出請求

X2后置處理器:后置處理器一般放在取樣器之后泻云,用來處理服務器的返回結果艇拍,專門用來對響應數(shù)據(jù)做處理的元件,JMeter就是用后置處理器來關聯(lián)的

前置處理器宠纯,配置元件卸夕,后置處理器都是為取樣器提供數(shù)據(jù)支持的,取樣器關注的是業(yè)務邏輯

X3控制器:控制次數(shù)

X4定時器:為了足夠真是的模擬用戶負載婆瓜,有時候會需要模擬這些請求在同一時刻發(fā)送 快集,通過定時器來實現(xiàn)

X5線程組:線程組完成性能測試需要模擬大量用戶負載的情況,在此元件中廉白,我們可以設置運行的線程數(shù)(一線程一用戶)

Test Fragment:輔助組件个初,可以在腳本開發(fā)過程中用來備份元件,Test Fragment下的元件可以被模塊控制器調(diào)用猴蹂,可以利用他來模塊化請求供模塊化控制器調(diào)用

工作臺:功能有:

(1)在工作臺建立一個HTTP代理服務器元件院溺,設置代理信息然后進行錄制

(2)設置服務器監(jiān)控

(3)顯示當前JMeter屬性信息

(4)備份腳本,作為一個元件暫存區(qū)

JMeter運行原理

在JMeter中是以線程的方式來運行磅轻,運行在JVM虛擬機上.JMeter通過線程組來驅(qū)動多個線程運行測試腳本對被測服務器發(fā)起負載覆获,每一個負載機上都可以運行多個線程組,JMeter運行場景不僅可以在GUI方式完成瓢省,還可以使用命令行弄息,命令行運行的方式對于負載機的資源消耗會更小。

JMeter測試計劃要素

JMeter中一個腳本即是一個測試計劃勤婚,也是一個管理單元摹量,JMeter的請求模擬與并發(fā)數(shù)(設置線程數(shù),一個線程代表一個虛擬用戶)設置都子腳本文件中一起設置

要素一:腳本中測試計劃只能有一個

要素二:測試計劃中至少要有一個線程組

要素三:至少要有一個取樣器

要素四:至少要有一個監(jiān)聽器

JMeter環(huán)境介紹

本章小結

JMeter運行邏輯如下三部分

第一:利用取樣器模擬用戶請求馒胆,如果需要做一些數(shù)據(jù)及環(huán)境的準備缨称, 使用前置管理器,如果需要對響應的數(shù)據(jù)做處理祝迂,使用后置處理器

第二:控制運行睦尽;使用線程組才設置運行場景,利用邏輯控制器來控制業(yè)務(實際就是控制取樣器)

第三:收集結果型雳,利用斷言來驗證測試結果当凡,利用監(jiān)聽器來收集顯示測試結果

同時JMeter也支持遠程運行山害,彌補單臺機器負載不夠的情況,運城運行時遠程負載機要運行Agent(jmeter-server.bat來啟動)

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末沿量,一起剝皮案震驚了整個濱河市浪慌,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌朴则,老刑警劉巖权纤,帶你破解...
    沈念sama閱讀 210,978評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異乌妒,居然都是意外死亡汹想,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評論 2 384
  • 文/潘曉璐 我一進店門撤蚊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來欧宜,“玉大人,你說我怎么就攤上這事拴魄∪呷祝” “怎么了?”我有些...
    開封第一講書人閱讀 156,623評論 0 345
  • 文/不壞的土叔 我叫張陵匹中,是天一觀的道長夏漱。 經(jīng)常有香客問我,道長顶捷,這世上最難降的妖魔是什么挂绰? 我笑而不...
    開封第一講書人閱讀 56,324評論 1 282
  • 正文 為了忘掉前任,我火速辦了婚禮服赎,結果婚禮上葵蒂,老公的妹妹穿的比我還像新娘。我一直安慰自己重虑,他們只是感情好践付,可當我...
    茶點故事閱讀 65,390評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著缺厉,像睡著了一般永高。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上提针,一...
    開封第一講書人閱讀 49,741評論 1 289
  • 那天命爬,我揣著相機與錄音,去河邊找鬼辐脖。 笑死饲宛,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的嗜价。 我是一名探鬼主播艇抠,決...
    沈念sama閱讀 38,892評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼幕庐,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了练链?” 一聲冷哼從身側響起翔脱,我...
    開封第一講書人閱讀 37,655評論 0 266
  • 序言:老撾萬榮一對情侶失蹤奴拦,失蹤者是張志新(化名)和其女友劉穎媒鼓,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體错妖,經(jīng)...
    沈念sama閱讀 44,104評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡绿鸣,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了暂氯。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片潮模。...
    茶點故事閱讀 38,569評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖痴施,靈堂內(nèi)的尸體忽然破棺而出擎厢,到底是詐尸還是另有隱情,我是刑警寧澤辣吃,帶...
    沈念sama閱讀 34,254評論 4 328
  • 正文 年R本政府宣布动遭,位于F島的核電站,受9級特大地震影響神得,放射性物質(zhì)發(fā)生泄漏厘惦。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,834評論 3 312
  • 文/蒙蒙 一哩簿、第九天 我趴在偏房一處隱蔽的房頂上張望宵蕉。 院中可真熱鬧,春花似錦节榜、人聲如沸羡玛。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,725評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽缝左。三九已至,卻和暖如春浓若,著一層夾襖步出監(jiān)牢的瞬間渺杉,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,950評論 1 264
  • 我被黑心中介騙來泰國打工挪钓, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留是越,地道東北人。 一個月前我還...
    沈念sama閱讀 46,260評論 2 360
  • 正文 我出身青樓碌上,卻偏偏與公主長得像倚评,于是被迫代替她去往敵國和親浦徊。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,446評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 在使用Jmeter進行接口的性能測試時天梧,由于Jmeter 是JAVA應用盔性,對于CPU和內(nèi)存的消耗比較大,所以呢岗,當需...
    燕京博士閱讀 4,162評論 0 16
  • JMeter有兩種類型的控制器:取樣器和邏輯控制器冕香。 取樣器指示JMeter向一個服務器發(fā)送請求。例如后豫,如果你想讓...
    七月尾巴_葵花閱讀 1,671評論 0 3
  • 1 Jmeter安裝配置 使用Jmeter前首先要安裝JDK悉尾,配置JDK環(huán)境變量。Jmeter不需要安裝挫酿,下載后...
    茶小汐閱讀 2,924評論 0 8
  • 1. JMeter 測試計劃 測試計劃 使用JMeter進行測試的起點构眯,是其它JMeter測試元件的容器。 線程組...
    alamZheng閱讀 3,349評論 0 7
  • 一早龟、基本概念 1.測試計劃是使用 JMeter 進行測試的起點惫霸,它是其它 JMeter 測試元件的容器。 2.線程...
    Leo_0626閱讀 2,269評論 0 10