Jmeter的簡介和使用方法

1.Jmeter的簡介

Apache JMeter,是Apache組織開發(fā)的基于Java的針對功能和性能的測試工具。最初JMeter是為Web/HTTP測試而設(shè)計的,但是后來它已經(jīng)擴展到支持各種各樣的測試模塊。JMeter可以用于測試靜態(tài)或者動態(tài)資源的性能(如靜態(tài)文件、Java服務(wù)程序、Servlet、CGI腳本、Perl腳本、Java對象、數(shù)據(jù)庫和查詢、FTP服務(wù)器或者其他資源)。JMeter可以用于模擬對服務(wù)器、網(wǎng)絡(luò)或?qū)ο蠹右跃薮蟮呢撦d,在不同壓力類別下測試它們的強度,分析整體性能。另外,JMeter能夠?qū)?yīng)用程序做功能/回歸測試,通過創(chuàng)建帶有斷言的腳本來驗證你的程序返回了你期望的結(jié)果。為了最大限度的靈活性,JMeter允許使用正則表達式創(chuàng)建斷言。同時它也提供了一個可替換的界面用來定制數(shù)據(jù)顯示,測試的同步及測試的創(chuàng)建和執(zhí)行。

其下載地址為:?http://jakarta.apache.org。雙擊D:/JMeter/bin下的jmeter.bat或ApacheJMeter.jar即可開啟運行。

2.主要組件介紹

(1)測試計劃(Test Plan)

?? 是使用JMeter進行測試的起點,它是其它JMeter測試元件的容器。

(2)線程組(Thread Group)

?? 代表一定數(shù)量的并發(fā)用戶,它可以用來模擬并發(fā)用戶發(fā)送請求。

(3)取樣器(sampler)

?? 定義實際的請求內(nèi)容,被線程組包含,我們主要用HTTP請求。

(4)監(jiān)聽器(Listener)

負責(zé)收集測試結(jié)果,同時也被告知了結(jié)果顯示的方式。我們常用的包括:聚合報告、察看結(jié)果樹、用表格查看結(jié)果,都支持將結(jié)果數(shù)據(jù)寫入文件。其他的添加上去看看就行。

(5)邏輯控制器(Logic Controller)

可以自定義JMeter發(fā)送請求的行為邏輯,它與Sampler結(jié)合使用可以模擬復(fù)雜的請求序列。

其分為循環(huán)控制器和事務(wù)控制器。

(6)斷言(Assertions)

可以用來判斷請求響應(yīng)的結(jié)果是否如用戶所期望的。它可以用來隔離問題域,即在確保功能正確的前提下執(zhí)行壓力測試。這個限制對于有效的測試是非常有用的。

(7)配置元件(Config Element)

維護Sampler需要的配置信息,并根據(jù)實際的需要會修改請求的內(nèi)容。我們主要在參數(shù)化中用到CSV Data Set Config。

(8)前置處理器(Pre Processors)和后置處理器(Post Processors)

負責(zé)在生成請求之前和之后完成工作。前置處理器常常用來修改請求的設(shè)置,后置處理器則常常用來處理響應(yīng)的數(shù)據(jù)。我們主要在動態(tài)關(guān)聯(lián)中用到后置處理器的正則表達式提取器。

(9)定時器(Timer)

負責(zé)定義請求之間的延遲間隔。

3.三種腳本生成方式

方式一:直接導(dǎo)入 Badboy所錄制腳本

在前面的文章我們講解了使用badboy進行腳本錄制,這里可以直接將其導(dǎo)入到Jmeter中。具體補步驟如下:

(1)打開JMeter會有一個默認的測試計劃,點擊文件->打開,選中錄制的腳本文件如:Baidu_login.jmx,打開腳本進行測試。

(2)在線程組(Thread Group)上添加 監(jiān)聽器->聚合報告(用于分析測試結(jié)果)后,點擊 運行-啟動,開始測試,測試完畢后在聚合報告中就可以看到測試結(jié)果。一個簡單的測試計劃就完成了。

方式二:手動編寫測試樣例

(1)在測試計劃中先添加一個線程組,然后在該線程組中加入http請求模塊。可以在sampler中看到,Jmeter還能測試數(shù)據(jù)庫連接查詢壓力,F(xiàn)TP連接壓力等。

(2)編寫測試請求。

(3)添加監(jiān)聽等。

(4)設(shè)置線程并發(fā)量。

(5)點擊運行,查看運行結(jié)果,進行分析。

即300個并發(fā)量中,平均時間是17074毫秒,中間段發(fā)出的的請求耗時18891毫秒,末尾百分之90處發(fā)出的請求耗時25575毫秒。整個測試過程中,最小耗時為2616毫秒,最大耗時為26911毫秒。

方式三:使用Jmeter工作臺錄制腳本(待續(xù)……)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容