關(guān)于Jmeter性能測試工具不再過多介紹。如果你要學(xué)習(xí)軟件性能測試,那么多少應(yīng)該會對它有所耳聞。
強(qiáng)烈建議閱讀官方文檔學(xué)習(xí):http://jmeter.apache.org/index.html
還有比這個更權(quán)威更全面的介紹Jmeter工具使用的么?
不過,此處要介紹是用它來做接口測試。
一、安裝Jmeter
Jmeter官方首頁:http://jmeter.apache.org/
關(guān)于Jmeter可以做什么,官方上也有非常詳細(xì)的介紹。另外它的文檔也寫很詳細(xì)。如果想學(xué)習(xí)Jmeter,那么它的文檔將會是最好的教材。
我相信你可以在官網(wǎng)上找到下載地址并把它下載下來。
Jmeter由Java語言開發(fā),最新的Jmeter3.0版本的運(yùn)行需要有Java 7 或之后版本的環(huán)境。我同樣相信你能搞定Java環(huán)境。
接下來,將下載的apache-jmeter-3.0.zip解壓,進(jìn)入解壓目錄…/apache-jmeter-3.0/bin 。雙擊ApacheJMeter.jar啟動:
二、添加HTTP接口測試
我們的所以工具都會在Jmeter工具中完成,接來就按照一般步驟來創(chuàng)建一個HTTP接口測試。
如上圖,右鍵點(diǎn)擊“測試計(jì)劃”–>“添加”–>“Threads(Users)”–>“線程組”。
如上圖,設(shè)置線程組,線程組主要包含三個參數(shù):線程數(shù)、準(zhǔn)備時長(Ramp-Up Period(in seconds))、循環(huán)次數(shù)。
線程數(shù):虛擬用戶數(shù)。一個虛擬用戶占用一個進(jìn)程或線程。設(shè)置多少虛擬用戶數(shù)在這里也就是設(shè)置多少個線程數(shù)。
準(zhǔn)備時長: 設(shè)置的虛擬用戶數(shù)全部啟動的時長。如果線程數(shù)為20 ,準(zhǔn)備時長為10(秒) ,那么需要10秒鐘啟動20個線程。也就是平均每秒啟動2個線程。
循環(huán)次數(shù):每個線程發(fā)送請求的個數(shù)。如果線程數(shù)為20 ,循環(huán)次數(shù)為100 ,那么每個線程發(fā)送100次請求。總請求數(shù)為20*100=2000 。如果勾選了“永遠(yuǎn)”,那么所有線程會一直發(fā)送請求,直到手動點(diǎn)擊工具欄上的停止按鈕,或者設(shè)置的線程時間結(jié)束。
因?yàn)檫@里要做接口測試,所以各個參數(shù)為均1。
如上圖,右鍵點(diǎn)擊“線程組”–>“添加”–>“Sampler”–>“HTTP請求”。
名稱:本屬性用于標(biāo)識一個取樣器,建議使用一個有意義的名稱。
注釋:對于測試沒有任何作用,僅用戶記錄用戶可讀的注釋信息。
服務(wù)器名稱或IP :HTTP請求發(fā)送的目標(biāo)服務(wù)器名稱或IP地址。
端口號:目標(biāo)服務(wù)器的端口號,默認(rèn)值為80 。
協(xié)議:向目標(biāo)服務(wù)器發(fā)送HTTP請求時的協(xié)議,可以是HTTP或者是HTTPS ,默認(rèn)值為http 。
方法:發(fā)送HTTP請求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE等。
Content encoding :內(nèi)容的編碼方式,默認(rèn)值為iso8859
路徑:目標(biāo)URL路徑(不包括服務(wù)器地址和端口)
自動重定向:如果選中該選項(xiàng),當(dāng)發(fā)送HTTP請求后得到的響應(yīng)是302/301時,JMeter 自動重定向到新的頁面。
Use keep Alive : 當(dāng)該選項(xiàng)被選中時,jmeter 和目標(biāo)服務(wù)器之間使用 Keep-Alive方式進(jìn)行HTTP通信,默認(rèn)選中。
Use multipart/from-data for HTTP POST :當(dāng)發(fā)送HTTP POST 請求時,使用Use multipart/from-data方法發(fā)送,默認(rèn)不選中。
同請求一起發(fā)送參數(shù) : 在請求中發(fā)送URL參數(shù),對于帶參數(shù)的URL ,jmeter提供了一個簡單的對參數(shù)化的方法。用戶可以將URL中所有參數(shù)設(shè)置在本表中,表中的每一行是一個參數(shù)值對(對應(yīng)RUL中的 名稱1=值1)。
如上圖,右鍵點(diǎn)擊“線程組”–>“添加”–>“監(jiān)聽器”–>“察看結(jié)果樹”。
三、添加新的POST請求
POST請求的添加方式與前面GET請求一樣。不過POST請求需要設(shè)置參數(shù)。
服務(wù)器名稱或IP: 127.0.0.1
端口號:8000
方法:POST
路徑:/polls/question_vote/
同請求一起發(fā)送參數(shù):
點(diǎn)擊“添加”按鈕,添加POST請求的參數(shù)。
執(zhí)行測試:
選擇菜單欄“運(yùn)行”–>“清除”,或者點(diǎn)擊工具欄清除按鈕。然后重新執(zhí)行啟動測試。并查看結(jié)果樹。
四、添加斷言
對于自動化測試來說,斷言必須要有的,如果沒有斷言我們只能人眼對比對接口返回的數(shù)據(jù),有了斷言功能,就會簡化這個過程。Jmeter提供了豐富的斷言方法來幫助我們完成這個工作。
如上圖,右鍵點(diǎn)擊HTTP請求“添加”–>“斷言”–>“響應(yīng)斷言”。
要測試的響應(yīng)字段:響應(yīng)文本、Document(text)、URL樣本、響應(yīng)信息、Response Headers、Lgnore Staus等選項(xiàng)。雖然接口返回的是Json格式的數(shù)據(jù),但對于Jmeter來說返回?cái)?shù)據(jù)為文本,所以,這里可以勾選“響應(yīng)文本”
模式匹配規(guī)則:包括、匹配、Equals、Substring。這里只需要驗(yàn)證返回?cái)?shù)據(jù)中是否包含主要的關(guān)鍵字,所以,這里勾選“包括”。
要測試的模式:其實(shí)就是斷言的數(shù)據(jù)。點(diǎn)擊“添加”按鈕,輸入要斷言的數(shù)據(jù)。
運(yùn)行測試:
再次清除測試數(shù)據(jù),點(diǎn)擊啟動測試,查看結(jié)果樹,如下圖。
=====================
接口測試就是這么簡單!
以上就是對Web Jmeter 的資料整理,后續(xù)繼續(xù)補(bǔ)充相關(guān)資料,謝謝大家對本站的支持!
您可能感興趣的文章:- jmeter 在linux服務(wù)器的安裝和運(yùn)行教程圖解
- 使用Jmeter連接Mysql圖文教程
- Jmeter連接數(shù)據(jù)庫過程圖解
- Jmeter調(diào)用java腳本過程詳解
- jmeter如何自動生成測試報(bào)告
- Jmeter如何獲取jtl文件中所有的請求報(bào)文詳解