Web Jmeter–接口測試工具詳解
關(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版本的運行需要有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接口測試。

如上圖,右鍵點擊“測試計劃”–>“添加”–>“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ā)送請求,直到手動點擊工具欄上的停止按鈕,或者設(shè)置的線程時間結(jié)束。
因為這里要做接口測試,所以各個參數(shù)為均1。

如上圖,右鍵點擊“線程組”–>“添加”–>“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ù)器地址和端口)
自動重定向:如果選中該選項,當(dāng)發(fā)送HTTP請求后得到的響應(yīng)是302/301時,JMeter 自動重定向到新的頁面。
Use keep Alive : 當(dā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)。

如上圖,右鍵點擊“線程組”–>“添加”–>“監(jiān)聽器”–>“察看結(jié)果樹”。

三、添加新的POST請求
POST請求的添加方式與前面GET請求一樣。不過POST請求需要設(shè)置參數(shù)。

服務(wù)器名稱或IP: 127.0.0.1
端口號:8000
方法:POST
路徑:/polls/question_vote/
同請求一起發(fā)送參數(shù):
點擊“添加”按鈕,添加POST請求的參數(shù)。
|
名稱: |
值 |
|
qid |
1 |
|
cid |
1 |
執(zhí)行測試:
選擇菜單欄“運行”–>“清除”,或者點擊工具欄清除按鈕。然后重新執(zhí)行啟動測試。并查看結(jié)果樹。

四、添加斷言
對于自動化測試來說,斷言必須要有的,如果沒有斷言我們只能人眼對比對接口返回的數(shù)據(jù),有了斷言功能,就會簡化這個過程。Jmeter提供了豐富的斷言方法來幫助我們完成這個工作。

如上圖,右鍵點擊HTTP請求“添加”–>“斷言”–>“響應(yīng)斷言”。

要測試的響應(yīng)字段:響應(yīng)文本、Document(text)、URL樣本、響應(yīng)信息、Response Headers、Lgnore Staus等選項。雖然接口返回的是Json格式的數(shù)據(jù),但對于Jmeter來說返回數(shù)據(jù)為文本,所以,這里可以勾選“響應(yīng)文本”
模式匹配規(guī)則:包括、匹配、Equals、Substring。這里只需要驗證返回數(shù)據(jù)中是否包含主要的關(guān)鍵字,所以,這里勾選“包括”。
要測試的模式:其實就是斷言的數(shù)據(jù)。點擊“添加”按鈕,輸入要斷言的數(shù)據(jù)。
運行測試:
再次清除測試數(shù)據(jù),點擊啟動測試,查看結(jié)果樹,如下圖。

=====================
接口測試就是這么簡單!
以上就是對Web Jmeter 的資料整理,后續(xù)繼續(xù)補(bǔ)充相關(guān)資料,謝謝大家對本站的支持!
相關(guān)文章
MobaXterm詳細(xì)使用圖文教程(MobaXterm連接Linux服務(wù)器)
這篇文章主要介紹了MobaXterm詳細(xì)使用教程,介紹一下如何設(shè)置并用MobaXterm來連接Linux服務(wù)器,本文介紹了三種連接方式:SSH,F(xiàn)TP,serial,以及幾個有用的設(shè)置和命令,需要的朋友可以參考下2023-05-05
HttpGet請求與Post請求中參數(shù)亂碼原因剖析與解決方案
這篇文章主要介紹了HttpGet請求與Post請求中參數(shù)亂碼原因剖析,文中有相關(guān)的代碼示例,具有一定的參考價值,需要的朋友可以參考下2023-07-07
如何用Idea或者webstorm跑一個Vue項目(步驟詳解)
這篇文章主要介紹了如何用Idea或者webstorm跑一個Vue項目,本文分步驟給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02
http請求405錯誤方法不被允許的解決 (Method not allowed)
這篇文章主要介紹了http請求405錯誤方法不被允許的解決 (Method not allowed),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
gliffy-confluence-plugin-9.1.2插件教程詳解
這篇文章主要介紹了gliffy-confluence-plugin-9.1.2破解教程詳解,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02

