jmeter的使用

JMeter壓力測試入門教程

2013-06-24

雙臺子網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站開發(fā)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)成立與2013年到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

Posted byyeho

ApacheJMeter是Apache組織開發(fā)的基于Java的壓力測試工具。用于對軟件做壓力測試,它最初被設(shè)計(jì)用于Web應(yīng)用測試但后來擴(kuò)展到其他測試領(lǐng)域。 它可以用于測試靜態(tài)和動態(tài)資源例如靜態(tài)文件、Java小服務(wù)程序、CGI腳本、Java 對象、數(shù)據(jù)庫, FTP服務(wù)器, 等等。JMeter 可以用于對服務(wù)器、網(wǎng)絡(luò)或?qū)ο竽M巨大的負(fù)載,來在不同壓力類別下測試它們的強(qiáng)度和分析整體性能。另外,JMeter能夠?qū)?yīng)用程序做功能/回歸測試,通過創(chuàng)建帶有斷言的腳本來驗(yàn)證你的程序返回了你期望的結(jié)果。為了限度的靈活性,JMeter允許使用正則表達(dá)式創(chuàng)建斷言。

1. 下載JMeter

官方網(wǎng)站下載最新版本:http://jmeter.apache.org/download_jmeter.cgi,目前最新版是Apache JMeter 2.9
使用JMeter依賴jdk,建議安裝jdk 1.6版本
Linux下安裝jdk參考文章:http://www.linuxeye.com/Linux/Linux-install-JDK.html
Windowns下安裝jdk同Linux下安裝類似,這里就不介紹了。

2. 啟動JMeter

這里就在win下進(jìn)行,圖形界面較為方便
在目錄apache-jmeter-2.9bin 下可以見到一個jmeter.bat文件,雙擊此文件,即看到JMeter控制面板。

3. 運(yùn)行預(yù)準(zhǔn)備

現(xiàn)在來對LinuxEye進(jìn)行壓力測試,壓力測試對象為隨機(jī)的幾個網(wǎng)頁鏈接,這幾個鏈接是寫在一個文本文件中的,在壓力測試的時候會隨機(jī)讀取。
1) 建立一個線程組

為什么要建立線程組?原因很簡單,因?yàn)槲覀円M多個線程(用戶)來訪問LinuxEye。
線程屬性部分中,線程數(shù)是啟動多少個線程,我這里填寫的是10,Ramp-Up Period (in seconds)表示線程之間間隔多少時間允許,單位是秒,比如如果填寫10,那么10/10=1表示10個線程間每隔1秒鐘請求網(wǎng)站。
循環(huán)次數(shù):60個線程運(yùn)行完畢算是一次,循環(huán)次數(shù)就是這樣的一個請求過程運(yùn)行多少次,我這里測試就填寫的是2.
每次修改一個設(shè)置后,別忘記了保存一下。

2) 設(shè)置請求服務(wù)器、壓力鏈接等信息
接下來很自然的是,我們要測試的網(wǎng)站地址是什么?鏈接是什么?所以現(xiàn)在我們就來設(shè)置這些信息。
右鍵點(diǎn)擊我們剛創(chuàng)建的線程組,在彈出的菜單中,選擇添加->Sampler->Http請求

路徑:
假如你只是對一個鏈接進(jìn)行壓力測試,直接填寫一個鏈接就ok,比如http://www.linuxeye.com,但是大多數(shù)情況下都不是這樣的,我們這里需要多個鏈接,就如同剛開始講到的那樣,我們要將多個鏈接保存到一個文本文件中,然后隨機(jī)讀取進(jìn)行壓力測試。我們可以這么做,如圖:

在選擇一個功能下拉列表中選擇_StringFromFile,然后在本機(jī)新建一個測試文件C:UsersrootDesktopapache-jmeter-2.9test.txt,在第一行(你也可以不在第一行)的值中填寫測試文件的路徑,如下圖:

然后點(diǎn)擊“生成”按鈕,在生成按鈕的左邊文本框中將生成一個字符串如:
${__StringFromFile(C:UsersrootDesktopapache-jmeter-2.9test.txt,,,)}
在test.txt測試文件中,我們每行寫一個URL鏈接,如下格式:

/command/linuxrumen/program/jianzhan/command/cat.html/command/chmod.html/command/lsattr.html

注意,每行前面并沒有http://www.linuxeye.com這樣的信息,因?yàn)槲覀冊谇懊嬉呀?jīng)填寫了服務(wù)器地址為www.linuxeye.com,這里就沒必要再為每個url填寫這個相同前綴了;另外,上面的url格式也只是個例子,表示域名后的部分。

這樣一來,當(dāng)我們并非請求的時候,就會從test.txt中隨機(jī)選擇url來進(jìn)行壓力測試。
另外值得注意的一個地方是,如果參數(shù)中有中文的情況,運(yùn)行的時候可能會出現(xiàn)亂碼,這個時候就需要注意你在Jmeter中的編碼設(shè)置與你要請求的網(wǎng)頁編碼是一致的。

路徑文本框下面的選項(xiàng),可以按默認(rèn)的就成,Use multipart/form-data for HTTP POST是當(dāng)請求中有附件的情況,一般情況下都不用選中的。

3) 查看運(yùn)行結(jié)果
鼠標(biāo)右鍵點(diǎn)擊線程組,在彈出的菜單中選擇添加->監(jiān)聽器->用表格查詢結(jié)果

4. 運(yùn)行

當(dāng)然,在運(yùn)行前,請把所有修改都保存好

各屬性如下:
Sample:每個請求的序號
Start Time:每個請求開始時間
Thread Name:每個線程的名稱
Label:Http請求名稱
Sample Time:每個請求所花時間,單位毫秒
Status:請求狀態(tài),如果為勾則表示成功,如果為叉表示失敗。
Bytes:請求的字節(jié)數(shù)
如果Status為叉,那很顯然請求是失敗了,但如果是勾,也并不能認(rèn)為請求就一定完全成功了,因?yàn)檫€得看Bytes的字節(jié)數(shù)是否是所請求網(wǎng)頁的正常大小值,如果不是則說明發(fā)生了丟包現(xiàn)象,也不是完全成功。

在下面還有幾個參數(shù):
樣本數(shù)目:也就是上面所說的請求個數(shù),成功的情況下等于你設(shè)定的并發(fā)數(shù)目乘以循環(huán)次數(shù)。
平均:每個線程請求的平均時間
最新樣本:表示服務(wù)器響應(yīng)最后一個請求的時間
偏離:服務(wù)器響應(yīng)時間變化、離散程度測量值的大小,或者,換句話說,就是數(shù)據(jù)的分布(這個我不是很理解)。

術(shù)語:
1、線程組:測試?yán)锩總€任務(wù)都要線程去處理,所有我們后來的任務(wù)必須在線程組下面創(chuàng)建??梢栽?ldquo;Test Plan(鼠標(biāo)右擊) -> 添加 ->Threads(Users) -> 線程組”來建立它,然后在線程組面板里有幾個輸入欄:線程數(shù)、Ramp-Up Period(in seconds)、循環(huán)次數(shù),其中Ramp-Up Period(in seconds)表示在這時間內(nèi)創(chuàng)建完所有的線程。如有8個線程,Ramp-Up = 200秒,那么線程的啟動時間間隔為200/8=25秒,這樣的好處是:一開始不會對服務(wù)器有太大的負(fù)載。
2、取樣器(Sampler):可以認(rèn)為所有的測試任務(wù)都由取樣器承擔(dān),有很多種,如:HTTP請求。
3、斷言:對取樣器返回的請求結(jié)果給出判斷是否正確。
4、monitor:它的功能是對取樣器的請求結(jié)果顯示、統(tǒng)計(jì)一些數(shù)據(jù)(吞吐量、KB/S……)等

網(wǎng)頁名稱:jmeter的使用
標(biāo)題路徑:http://muchs.cn/article16/chcigg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站導(dǎo)航網(wǎng)站內(nèi)鏈、定制網(wǎng)站、自適應(yīng)網(wǎng)站、域名注冊

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)