jmeter的技術(shù)分享

一. JMeter介紹

Apache JMeter是Apache組織開發(fā)的基于Java的壓力測試工具。JMeter 可以用于對服務(wù)器、網(wǎng)絡(luò)或?qū)ο竽M巨大的負(fù)載,來自不同壓力類別下測試它們的強(qiáng)度和分析整體性能存捺。另外,JMeter能夠?qū)?yīng)用程序做功能/回歸測試曙蒸,通過創(chuàng)建帶有斷言的腳本來驗(yàn)證你的程序返回了你期望的結(jié)果捌治。為了最大限度的靈活性,JMeter允許使用正則表達(dá)式創(chuàng)建斷言纽窟。

二. JMeter安裝

1. 安裝JDK

參考官網(wǎng)

2. 安裝JMeter

直接訪問官網(wǎng)下載編譯好的版本肖油。

解壓(建議至/Applications 目錄)后目錄結(jié)構(gòu)如下圖:

添加環(huán)境變量

打開 ~/.bash_profile文件

添加以下指令:

export JMETER_HOME=/Applications/apache-jmeter-5.3/bin

export PATH=$JMETER_HOME:$PATH:.

執(zhí)行source ~/.bash_profile使環(huán)境變量生效

執(zhí)行jmeter -v出現(xiàn)下圖內(nèi)容則安裝成功

三. 啟動(dòng)JMeter

執(zhí)行jmeter,將啟動(dòng)JMeter臂港,在終端會(huì)有如下輸出:

在輸出中提示不能使用圖形界面進(jìn)行負(fù)載測試森枪,只能創(chuàng)建和調(diào)試測試計(jì)劃,負(fù)載測試需要執(zhí)行如下命令:

jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]

另外提示需要增加JVM的Heap配置去滿足自己的測試需求审孽。

在終端啟動(dòng)JMeter后會(huì)自動(dòng)打開圖形界面县袱,如下圖:

可操作菜單Options => Choose Language => Chinese 進(jìn)行中文語言的切換:

四. 創(chuàng)建測試計(jì)劃

點(diǎn)擊文件=》新建,創(chuàng)建測試計(jì)劃佑力。

右鍵“測試計(jì)劃”式散,選擇“添加=》線程=》線程組”

3.設(shè)置線程數(shù)為“60”

右鍵“線程組”,選擇“添加=》取樣器=》http請求”

設(shè)置http請求的路徑為http://localhost:8080

右鍵“線程組”打颤,選擇“添加=》斷言=》響應(yīng)斷言”

設(shè)置響應(yīng)代碼為200

右鍵“線程組”暴拄,選擇“添加=》監(jiān)聽器=》觀察結(jié)果樹”

點(diǎn)擊頂部的執(zhí)行按鈕(綠色三角符)漓滔,驗(yàn)證執(zhí)行結(jié)果,在觀察結(jié)果樹可看到執(zhí)行的記錄

10.點(diǎn)擊保存乖篷,測試計(jì)劃創(chuàng)建完成

五响驴、關(guān)聯(lián)

在某些業(yè)務(wù)場景中b接口需要的內(nèi)容是a接口返回的,對a接口設(shè)置正則表達(dá)式那伐,提取想要的值踏施,在b接口中引用。

使用關(guān)聯(lián)首先在取樣器下添加-后置處理器-正則表達(dá)式提取器

引用名稱:即變量名稱,調(diào)用方法與變量一致,即${引用名稱}

正則表達(dá)式:根據(jù)上下文獲取需要的數(shù)據(jù)护姆,()內(nèi)的數(shù)據(jù)即變量的數(shù)據(jù)汇荐,()左邊兩邊是你取值的邊界

模版:表示將解析到的第幾個(gè)值賦予給引用名稱,需要用$$引用起來

匹配數(shù)字:如果你的模版匹配到了多個(gè)值棍厌,0代表隨機(jī)肾胯,1代表全部,如果你想使用匹配到的第一個(gè)值耘纱,即${引用變量_g1},第二個(gè)值即${引用變量_g2}

缺省值:如果沒有匹配到的默認(rèn)值敬肚。

六、參數(shù)化

1.添加配置元件-csv數(shù)據(jù)文件設(shè)置

2.參數(shù)化文件使用CSV文件束析,即逗號分隔值艳馒,

文件名:填寫參數(shù)化配置文件絕對的地址

變量名稱,即每一列數(shù)據(jù)的變量名

遇到文件結(jié)束符再次循環(huán)员寇,http請求結(jié)束后繼續(xù)執(zhí)行下一組數(shù)據(jù)

七. 運(yùn)行測試計(jì)劃

執(zhí)行命令?jmeter -n -t /Users/lufei/jmeter腳本目錄/PC區(qū)域管理模塊.jmx -l result.txt -e -o report

Test_plan.jmx:測試計(jì)劃文件

result.txt:測試記錄

report:測試報(bào)告保存目錄

輸出如下則執(zhí)行成功

八. 看懂測試報(bào)告

進(jìn)入至report目錄弄慰,用瀏覽器打開index.html

中間Statistics部分是聚合報(bào)告,測試報(bào)告的主要指標(biāo)集中在這一部分蝶锋,下面是指標(biāo)的詳細(xì)說明:

Label:每個(gè) JMeter 的 element(例如 HTTP Request)都有一個(gè) Name 屬性陆爽,這里顯示的就是 Name 屬性的值

Samples:表示你這次測試中一共發(fā)出了多少個(gè)請求,如果模擬10個(gè)用戶扳缕,每個(gè)用戶迭代10次慌闭,那么這里顯示100

Average:平均響應(yīng)時(shí)間——默認(rèn)情況下是單個(gè) Request 的平均響應(yīng)時(shí)間,當(dāng)使用了 Transaction Controller 時(shí)躯舔,也可以以Transaction 為單位顯示平均響應(yīng)時(shí)間

Median:中位數(shù)驴剔,也就是 50% 用戶的響應(yīng)時(shí)間

90% Line:90% 用戶的響應(yīng)時(shí)間

Min:最小響應(yīng)時(shí)間

Max:最大響應(yīng)時(shí)間

Error%:本次測試中出現(xiàn)錯(cuò)誤的請求的數(shù)量/請求的總數(shù)

Throughput:吞吐量——默認(rèn)情況下表示每秒完成的請求數(shù)(Request per Second),當(dāng)使用了 Transaction Controller 時(shí)庸毫,也可以表示類似 LoadRunner 的 Transaction per Second 數(shù)

KB/Sec:每秒從服務(wù)器端接收到的數(shù)據(jù)量仔拟,相當(dāng)于LoadRunner中的Throughput/Sec

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市飒赃,隨后出現(xiàn)的幾起案子利花,更是在濱河造成了極大的恐慌科侈,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件炒事,死亡現(xiàn)場離奇詭異臀栈,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)挠乳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進(jìn)店門权薯,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人睡扬,你說我怎么就攤上這事盟蚣。” “怎么了卖怜?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵屎开,是天一觀的道長。 經(jīng)常有香客問我马靠,道長奄抽,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任甩鳄,我火速辦了婚禮逞度,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘妙啃。我一直安慰自己档泽,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布彬祖。 她就那樣靜靜地躺著茁瘦,像睡著了一般。 火紅的嫁衣襯著肌膚如雪储笑。 梳的紋絲不亂的頭發(fā)上甜熔,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天,我揣著相機(jī)與錄音突倍,去河邊找鬼腔稀。 笑死,一個(gè)胖子當(dāng)著我的面吹牛羽历,可吹牛的內(nèi)容都是我干的焊虏。 我是一名探鬼主播,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼秕磷,長吁一口氣:“原來是場噩夢啊……” “哼诵闭!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤疏尿,失蹤者是張志新(化名)和其女友劉穎瘟芝,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體褥琐,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡锌俱,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了敌呈。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片贸宏。...
    茶點(diǎn)故事閱讀 40,424評論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖磕洪,靈堂內(nèi)的尸體忽然破棺而出吭练,到底是詐尸還是另有隱情,我是刑警寧澤析显,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布线脚,位于F島的核電站,受9級特大地震影響叫榕,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜姊舵,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一晰绎、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧括丁,春花似錦荞下、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至构资,卻和暖如春抽诉,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背吐绵。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工迹淌, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人己单。 一個(gè)月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓唉窃,卻偏偏與公主長得像,于是被迫代替她去往敵國和親纹笼。 傳聞我的和親對象是個(gè)殘疾皇子纹份,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評論 2 359

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

  • JMeter主要組件介紹 1.測試計(jì)劃(Test Plan)是使用 JMeter 進(jìn)行測試的起點(diǎn),它是其它 JMe...
    夏若至末閱讀 2,326評論 0 4
  • 1、測試計(jì)劃(Test Plan) 控件截圖: 理解:包含一個(gè)測試的所有內(nèi)容蔓涧,包含所有的控件件已,屬性,變量蠢笋。所以一個(gè)...
    社會(huì)主義頂梁鹿閱讀 1,153評論 0 4
  • 主要文體來自 CDNS:https://www.cnblogs.com/ceshisanren/p/5639895...
    Amano閱讀 11,004評論 3 27
  • 1.性能測試 1.性能測試是什么 基于協(xié)議模擬用戶發(fā)出請求拨齐,對服務(wù)器形成一定負(fù)載,來測試服務(wù)器的性能指標(biāo)是否滿足要...
    連貓都嫌棄我閱讀 562評論 0 0
  • 1 Jmeter安裝配置 使用Jmeter前首先要安裝JDK昨寞,配置JDK環(huán)境變量瞻惋。Jmeter不需要安裝,下載后...
    茶小汐閱讀 2,932評論 0 8