
【基本介紹】
Apache JMeter是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)建斷言。Apache jmeter 可以用于對靜態(tài)的和動態(tài)的資源(文件,Servlet,Perl腳本,java 對象,數(shù)據(jù)庫和查詢,F(xiàn)TP服務(wù)器等等)的性能進(jìn)行測試。它可以用于對服務(wù)器、網(wǎng)絡(luò)或?qū)ο竽M繁重的負(fù)載來測試它們的強(qiáng)度或分析不同壓力類型下的整體性能。你可以使用它做性能的圖形分析或在大并發(fā)負(fù)載測試你的服務(wù)器/腳本/對象。
【軟件特點(diǎn)】
它是免費(fèi)的。開放源碼軟件。它具有簡單,直觀的圖形用戶界面。
JMeter中負(fù)載和性能測試許多不同的服務(wù)器類型:網(wǎng)站 - HTTP,HTTPS,SOAP,數(shù)據(jù)庫通過JDBC,LDAP,JMS,郵件 - POP3
它是獨(dú)立于平臺的工具。在Linux / UNIX,JMeter中JMeter中shell腳本點(diǎn)擊可以調(diào)用。在Windows上,它可以調(diào)用啟動jmeter.bat文件。
它具有完整的Swing和輕量級組件支持(預(yù)編譯的JAR使用包javax.swing中*)。
JMeter 測試計(jì)劃存儲為XML格式。這意味著可以使用文本編輯器生成一個(gè)測試計(jì)劃。
它的完整的多線程框架,允許并發(fā)多線程和同步采樣不同的功能由單獨(dú)的線程組采樣。
它是高度可擴(kuò)展的。
也可用于執(zhí)行應(yīng)用程序的自動化測試和功能測試。
【軟件特性】
JMeter的作用:能夠?qū)TTP和FTP服務(wù)器進(jìn)行壓力和性能測試,也可以對任何數(shù)據(jù)庫進(jìn)行同樣的測試(通過JDBC)。
完全的可移植性和100%純java。
完全Swing和輕量組件支持(預(yù)編譯的JAR使用javax.swing.*)包。
完全多線程框架允許通過多個(gè)線程并發(fā)取樣和通過單獨(dú)的線程組對不同的功能同時(shí)取樣。
精心的GUI設(shè)計(jì)允許快速操作和更精確的計(jì)時(shí)。
緩存和離線分析/回放測試結(jié)果。
高可擴(kuò)展性:
可鏈接的取樣器允許無限制的測試能力。
各種負(fù)載統(tǒng)計(jì)表和可鏈接的計(jì)時(shí)器可供選擇。
數(shù)據(jù)分析和可視化插件提供了很好的可擴(kuò)展性以及以及個(gè)性化。
具有提供動態(tài)輸入到測試的功能(包括Javascrīpt)。
支持腳本變成的取樣器(在1.9.2及以上版本支持BeanShell)。
【實(shí)用教程】
jmeter壓力測試教程首先創(chuàng)建線程組

設(shè)置線程組參數(shù)

添加HTTP COOKie 管理器,網(wǎng)站有登錄限制的需要用到記錄用戶信息


添加HTTP請求,為錄制http連接使用


添加HTTP代理服務(wù)器



在瀏覽器中設(shè)置代理

在瀏覽器中訪問需要測試的項(xiàng)目,代理錄制會得到相應(yīng)的路徑

選擇需要得到的測試報(bào)高樣式




【使用技巧】
應(yīng)用界面在將 apache-jmeter解壓之后,在文件夾 bin下有Jmeter.bat 文件,即為工具啟動文件,如下圖所示:

運(yùn)行啟動文件之后,進(jìn)入軟件界面,如下圖所示:

對于文件的重命名在界面的右部分,如下圖所示:

重命名之后保存即可,其它文件、元件、取樣器的命名方式相同,如下圖所示:

添加線程組
右鍵測試計(jì)劃-->添加-->Threads( Users ) -->線程組,如下圖所示:

為線程組添加元件和取樣器
針對于http的簡單應(yīng)用,只需要添加HTTP Cookie 管理器,HTTP信息頭管理器,HTTP請求默認(rèn)值,如下圖所示:

HTTP 請求默認(rèn)值可以設(shè)置http請求的協(xié)議,域名,端口號,如下圖所示:

三個(gè)元件添加好之后就可以添加HTTP 取樣器了,如下圖所示:

協(xié)議,域名,端口已經(jīng)由HTTP 默認(rèn)請求值元件設(shè)定了,需要添加請求的路徑,請求方式,參數(shù),如下圖所示:

為線程添加監(jiān)聽器
監(jiān)聽器可以得到取樣器中返回的結(jié)果,主要添加兩種,聚合報(bào)告和察看結(jié)果樹,如下圖所示:

準(zhǔn)備就緒之后就可以啟動測試,如下圖所示:

登錄請求,如下圖所示:

添加多個(gè)HTTP請求后,啟動工具
聚合報(bào)告,如下圖所示:

察看結(jié)果樹,如下圖所示:

在啟動工具之后,每個(gè)HTTP請求都會被執(zhí)行,根據(jù)HTTP請求中設(shè)置的請求方式,路徑,參數(shù),返回相應(yīng)的結(jié)果,如下圖所示:



































