使用Jmeter進(jìn)行接口測(cè)試和壓力測(cè)試的配置和使用

使用Jmeter進(jìn)行接口測(cè)試和壓力測(cè)試的配置和使用

1. Jmeter簡(jiǎn)介

Apache JMeter是Apache組織開發(fā)的基于Java的壓力測(cè)試工具。用于對(duì)軟件做壓力測(cè)試,它最初被設(shè)計(jì)用于Web應(yīng)用測(cè)試,但后來擴(kuò)展到其他測(cè)試領(lǐng)域。

JMeter 可以用于對(duì)服務(wù)器、網(wǎng)絡(luò)或?qū)ο竽M巨大的負(fù)載,來自不同壓力類別下測(cè)試它們的強(qiáng)度和分析整體性能。

另外,JMeter能夠?qū)?yīng)用程序做功能/回歸測(cè)試,通過創(chuàng)建帶有斷言的腳本來驗(yàn)證你的程序返回了你期望的結(jié)果。

2. Jmeter的下載和安裝

Jmeter的使用需要java環(huán)境,需要先下載安裝jdk;

下載Jmeter工具包,解壓后進(jìn)入bin文件夾,點(diǎn)擊jmeter.bat即可運(yùn)行;

可下載插件,擁有更多專業(yè)元件。

http://jmeter-plugins.org/downloads/all/下載JmeterPlugins-Standard-1.1.3.zip,解壓后將JmeterPlugins-Standard.jar放在XXX\Apache\jmeter\lib\ext下即可

3. 接口測(cè)試方法

1.什么是接口測(cè)試?

接口測(cè)試是測(cè)試系統(tǒng)組件間接口的一種測(cè)試。接口測(cè)試主要用于檢測(cè)外部系統(tǒng)與系統(tǒng)之間以及內(nèi)部各個(gè)子系統(tǒng)之間的交互點(diǎn)。測(cè)試的重點(diǎn)是要檢查數(shù)據(jù)的交換,傳遞和控制管理過程,以及系統(tǒng)間的相互邏輯依賴關(guān)系等。

2.準(zhǔn)備數(shù)據(jù)

獲得測(cè)試URL中需要用的參數(shù)名稱及值的獲取方式。

獲得各請(qǐng)求的方法、IP、測(cè)試URL、測(cè)試header、測(cè)試body及判斷基準(zhǔn)

測(cè)試實(shí)施

將測(cè)試用例中的各項(xiàng)寫入軟件中。

(1)創(chuàng)建線程組

(2)修改線程組名稱

(3)為線程組添加元件

1.HTTP Cookie管理器

因?yàn)楹芏鄔eb網(wǎng)站都是需要登錄后才可以進(jìn)行操作,登錄后產(chǎn)生的Cookie能夠驗(yàn)證用戶身份,在用軟件進(jìn)行測(cè)試時(shí),需要通過驗(yàn)證,所以我們需要添加此管理器管理Cookie,它的值被整個(gè)線程共享(也可以被整個(gè)測(cè)試計(jì)劃共享), Cookie在瀏覽器中取得。

2.HTTP 請(qǐng)求默認(rèn)值

測(cè)試用例中每個(gè)接口的共同值可以用“HTTP 請(qǐng)求默認(rèn)值”元件統(tǒng)計(jì)設(shè)置,省去每次請(qǐng)求都要填寫的麻煩,它的值被整個(gè)線程共享(也可以被整個(gè)測(cè)試計(jì)劃共享)。

3.用戶定義的變量

將后續(xù)用到的變量添加到“用戶定義的變量”,后續(xù)操作只需引用變量名稱即可,它的值被整個(gè)線程共享(也可以被整個(gè)測(cè)試計(jì)劃共享)。

4.HTTP請(qǐng)求

發(fā)送http請(qǐng)求需要用的元件。

5.HTTP信息頭管理器

發(fā)送http請(qǐng)求需要加入信息頭時(shí)用此元件,如線程組中的所有請(qǐng)求均需要信息頭,則可將此管理器升級(jí)為整個(gè)線程組共享或者整個(gè)測(cè)試計(jì)劃共享。

6.響應(yīng)斷言

發(fā)送請(qǐng)求后,需要通過比對(duì)響應(yīng)結(jié)果是夠符合判斷基準(zhǔn)來判斷某條測(cè)試是否ok,通過人為判斷是可行的,但是當(dāng)請(qǐng)求數(shù)量較大時(shí),人為判斷效率低下,添加“響應(yīng)斷言” 能夠提高效率(判斷基準(zhǔn)有多個(gè)時(shí),可以添加多個(gè)斷言)。

7.察看結(jié)果樹

用于查看測(cè)試結(jié)果。

8.其他元件

(1)正則表達(dá)式提取器

可將某次響應(yīng)返回?cái)?shù)據(jù)中某些信息提取出來,用于后續(xù)操作。

(2)Debug Sampler

用于調(diào)試整個(gè)測(cè)試

(3)CSV Data Set Config

通過文件進(jìn)行參數(shù)化的一個(gè)元件。

(4)開始測(cè)試

添加好各種元件及數(shù)據(jù)后,可進(jìn)行測(cè)試,通過察看結(jié)果樹察看各請(qǐng)求測(cè)試結(jié)果。

4. 壓力測(cè)試方法

(1)線程組

(2)Constant Throughput Timer(固定吞吐量控制器)

(3)聚合報(bào)告

(4)監(jiān)聽器

監(jiān)聽器jp@gc - Transactions per Second

監(jiān)聽器jp@gc –PerfMon Metrics Collector

(5)使用非GUI界面運(yùn)行壓力測(cè)試

非GUI壓力測(cè)試步驟:

在GUI界面設(shè)置并發(fā)數(shù)、測(cè)試時(shí)間等,添加各元件,保存測(cè)試計(jì)劃,并關(guān)閉軟件;

使用非GUI界面,用指令啟動(dòng)壓力測(cè)試;

指令例如:D:\Program Files\apache-jmeter-3.1\bin>jmeter -n -t testplan.jmx -l listener.jtl

打開jmeter.bat,在聚合報(bào)告元件中載入“l(fā)istener.jtl”,查看聚合報(bào)告;

在監(jiān)視器中中載入“l(fā)istener.jtl”,查看各曲線圖。

版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。 https://blog.csdn.net/m0_37529303/article/details/75453230

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

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

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