JMeter入門教程

本文版權(quán)歸xmeter.net所有。歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明出處。

簡介

本文由xmeter君寫給想了解性能測試和JMeter的小白,適合對這兩者了解很少的同學(xué)們,如果已經(jīng)有使用經(jīng)驗的請繞道,別浪費(fèi)時間:-) ?我們將介紹JMeter的使用場景,如何安裝、運(yùn)行JMeter,以及開始一個最最簡單的測試。你還徘徊在JMeter的門口嗎?別猶豫了,跟著本文做完,你就可以開啟你的JMeter之旅了。

JMeter是開源軟件Apache基金會下的一個性能測試工具,用來測試部署在服務(wù)器端的應(yīng)用程序的性能。近來,JMeter因為其使用簡單,現(xiàn)在也被社區(qū)作為接口測試工具...... 啥?什么是性能測試,怎么又來了個接口測試?好吧,xmeter君舉個栗子,你開了一個網(wǎng)店,興沖沖地準(zhǔn)備雙十一大干一把,沒想當(dāng)天活動的時候大量用戶一訪問你的網(wǎng)店,你的網(wǎng)店掛了,那怎么辦?辦法就是在實際搞活動之前,先測試一下以確認(rèn)系統(tǒng)能承受那么多的用戶,當(dāng)然測試的時候我們不需要請真正的這么多實際用戶,否則得花多少錢啊,JMeter就是那個能幫助模擬大量用戶訪問你網(wǎng)站的一個軟件。對,而且它是開源的,不花錢!那個接口測試呢,這里大概了解一下就可以了,就是驗證你的網(wǎng)店應(yīng)用邏輯有沒有問題的,比如你做打折活動的時候,結(jié)算的時候金額別出錯,要不客戶找你麻煩不是?

JMeter下載和安裝

JMeter可以在JMeter的官方網(wǎng)站下載,下載鏈接如下圖所示,xmeter君寫本文的時候(2016/11)可以下載到的最新的版本是3.0,

JMeter下載

下載后解壓到你系統(tǒng)下的任意目錄,我們稱該目錄為%JMETER_HOME%,然后運(yùn)行%JMETER_HOME%\bin\jmeter.bat文件,怎么樣,JMeter出來了嗎?嗯!?等等,好像報錯了。仔細(xì)看一下報錯原因,原來是Java沒安裝,因為JMeter是用Java寫的,運(yùn)行的時候需要Java ......不對啊,xmeter君,我這里好像已經(jīng)看到JMeter的界面了 -- 當(dāng)然咯,恭喜你,這是因為你之前已經(jīng)安裝了Java了,就跳過下一步吧。

Java未安裝錯誤

安裝Java

安裝之前先下載其安裝包,這里是下載地址。打開頁面后,按序點擊下列所示的鏈接,xmeter君寫本文的時候,Java的最新版本是8。

Java下載地址

進(jìn)入下一個頁面后,按序點擊如下所示開始下載,當(dāng)然,下載的文件需要跟你的系統(tǒng)對應(yīng),如果是Linux請下載相關(guān)的Linux版本,xmeter君用的是Windows 64位版的Java。

下載Java的鏈接

下載完畢之后運(yùn)行exe文件,按照向?qū)崾景惭b完Java。再次運(yùn)行%JMETER_HOME%\bin\jmeter.bat,如果都安裝對了的話就應(yīng)該能出現(xiàn)JMeter的運(yùn)行界面了。

JMeter 3.0運(yùn)行界面

JMeter之初體驗

JMeter安裝完了,那我們來一個簡單的實驗。性能測試當(dāng)然得有個測試目標(biāo),就是被測系統(tǒng)是什么,xmeter君這里就以測度娘為例來描述構(gòu)造一個簡單的性能測試過程:xmeter君保證你在5分鐘之內(nèi)完成一次測試體驗。

添加虛擬用戶組

如下圖所示,右擊“測試計劃”>添加>Threads(Users)>線程組。這里xmeter君需要解釋一下“線程組”的意思:JMeter是由Java實現(xiàn)的,并且使用一個Java線程來模擬一個用戶,因此線程組(Thread Group)就是指一組用戶的意思,換句話說一個線程組就是一組虛擬用戶(virtual users),這些虛擬用戶用來模擬訪問被測系統(tǒng)。

新建線程組

接下來xmeter君給大家介紹下“線程組”中常用到的一些設(shè)置。

1)線程數(shù):這里就是指虛擬用戶數(shù),默認(rèn)的輸入是“1”,則表明模擬一個虛擬用戶訪問被測系統(tǒng),如果想模擬100個用戶,則此處輸入100。

2)Ramp-Up Period (in seconds): 虛擬用戶增長時長。不明白別著急,xmeter君給你舉個栗子:比如你測試的是一個考勤系統(tǒng),那么實際用戶登錄使用考勤系統(tǒng)的時候并不是大家喊1、2、3 - 走起,然后一起登錄。實際使用場景可能是9點鐘上班,那么從8:30開始,考勤系統(tǒng)會陸陸續(xù)續(xù)有人開始登錄,直到9:10左右,那么如果完全按照用戶的使用場景,設(shè)計該測試的時候此處應(yīng)輸入40(分鐘)* 60(秒)= 2400。但是實際測試一般不會設(shè)置如此長的Ramp-Up時間,原因嘛,難道你做一次測試要先等上40分鐘做登錄操作?一般情況下,可以估計出登錄頻率最高的時間長度,比如此處可能從8:55到9:00登錄的人最多,那這里設(shè)置成300秒,如果“線程數(shù)”輸入為100,則意味著在5分鐘內(nèi)100用戶登錄完畢。

3)循環(huán)次數(shù):該處設(shè)置一個虛擬用戶做多少次的測試。默認(rèn)為1,意味著一個虛擬用戶做完一遍事情之后,該虛擬用戶停止運(yùn)行。如果選中“永遠(yuǎn)”,則意味著測試運(yùn)行起來之后就根本停不下來了,除非你把它強(qiáng)制咔嚓。

線程組的設(shè)置

添加被測頁面

接下來的一步就是要加入實際被測頁面,右擊“線程組” > “添加” > “Sampler” > “HTTP請求”。

添加“HTTP請求”

接下來需要設(shè)置一下“HTTP請求” Sampler的屬性,如下所示:

1)名稱:輸入“百度”,就是被測試網(wǎng)頁的描述性文字

2)服務(wù)器名稱或IP:被測服務(wù)器的網(wǎng)站名字,也可以是IP地址。剩下的屬性可以按照被測系統(tǒng)的屬性按需配置,現(xiàn)在都可以為空。

設(shè)置HTTP請求的屬性

現(xiàn)在的測試腳本已經(jīng)可以運(yùn)行了,先點擊下面如圖所示的第一步:點擊保存腳本按鈕;然后點擊如圖所示的第二步:點擊運(yùn)行測試按鈕。

保存與運(yùn)行測試

等等,xmeter君,為什么我的測試跑完了沒啥反應(yīng)?嗯,其實測試已經(jīng)跑完了,你可以去“選項” > “Log Viewer”看看運(yùn)行的日志。如果你還是看不到日志,你可以點擊下面所示的三角箭頭展開或者收起日志視圖。日志視圖中可以看到“線程組 1-1”的啟動和結(jié)束時間,表明測試已經(jīng)跑完。

測試日志視圖

這JMeter運(yùn)行看著也太不直觀了吧?那如果我的測試有問題了,怎么發(fā)現(xiàn)啊?別著急,JMeter提供了“監(jiān)聽器”讓用戶來觀察測試結(jié)果。

添加結(jié)果監(jiān)聽器

如下圖所示,右擊“線程組” > “監(jiān)聽器” > “察看結(jié)果樹”來查看性能測試過程中請求和響應(yīng)信息。添加完畢后,保存測試腳本,再次運(yùn)行。

添加查看結(jié)果樹

運(yùn)行測試完畢之后,點擊“察看結(jié)果樹” > “百度”,點擊下圖中3所示位置,你可以看到一些測試期間一些有用的信息,比如發(fā)送的請求的信息和響應(yīng)數(shù)據(jù)等。接下來可以試著改一下“線程組”里的“線程數(shù)”為10,就是模擬10個用戶訪問。別改太大哦,否則小心度娘把你的IP地址給封了 :-)

察看結(jié)果樹截圖

好啦,至此為止,你已經(jīng)學(xué)會了寫一個最簡單的JMeter的性能測試用例。怎么樣,夠簡單吧!

更多JMeter在線知識(視頻、文章等)

當(dāng)然咯,xmeter君在這篇文章里只是介紹了最簡單的JMeter知識,如果要完成一個比較專業(yè)的性能測試用例還需要對性能測試過程用到的技術(shù)有系統(tǒng)的了解才可以。xmeter君近期將在網(wǎng)站上推出比較系統(tǒng)的性能測試培訓(xùn)課程,包括性能測試的基本理論、JMeter基礎(chǔ)、JMeter高級擴(kuò)展,以及云上性能測試服務(wù) - XMeter等,敬請期待。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,106評論 6 542
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,441評論 3 429
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,211評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,736評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 72,475評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,834評論 1 328
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,829評論 3 446
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 43,009評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,559評論 1 335
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 41,306評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,516評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,038評論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,728評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,132評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,443評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,249評論 3 399
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 48,484評論 2 379

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