溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

開(kāi)源性能測(cè)試工具JMeter快速入門(二)

發(fā)布時(shí)間:2020-08-01 01:13:31 來(lái)源:網(wǎng)絡(luò) 閱讀:1445 作者:honzhang 欄目:軟件技術(shù)


目錄

一、JMeter簡(jiǎn)介

二、JMeter功能介紹

三、JMeter腳本

四、關(guān)于JMeter小提示




三、JMeter腳本


1.測(cè)試計(jì)劃

測(cè)試計(jì)劃是JMeter進(jìn)行測(cè)試的起點(diǎn) ,是其他JMeter測(cè)試元件的容器,每個(gè)測(cè)試場(chǎng)景/腳本都叫做一個(gè)測(cè)試計(jì)劃。

(1)名稱;與業(yè)務(wù)相關(guān)的名稱

(2)注釋:非必填

(3)用戶定義的變量,引用時(shí)直接用${變量名}即可,這里的變量是全局變量,作用于整個(gè)測(cè)試計(jì)劃。

(4)獨(dú)立運(yùn)行每個(gè)線程組:默認(rèn)不勾選,即所有線程組并發(fā)啟動(dòng)。勾選則順序執(zhí)行所有線程組。

(5)

開(kāi)源性能測(cè)試工具JMeter快速入門(二)

結(jié)束線程運(yùn)行后,停止主線程。

(6)函數(shù)測(cè)試模式:默認(rèn)不勾選 。勾選則記錄詳細(xì)請(qǐng)求,增加資源消耗,影響客戶端性能。

(7)

開(kāi)源性能測(cè)試工具JMeter快速入門(二)

向類路徑(%JMeterHOME%\lib)中添加目錄及JAR包。


2.VUser及場(chǎng)景設(shè)計(jì)

JMeter的場(chǎng)景設(shè)計(jì) 及Vuser都是在線程組下設(shè)計(jì)的。

這里線程-->Vuser(并發(fā)用戶數(shù))

循環(huán)次數(shù)及調(diào)度器-->場(chǎng)景設(shè)計(jì)模塊

開(kāi)源性能測(cè)試工具JMeter快速入門(二)

(1)線程屬性:

線程數(shù)

Ramp-Up Period:線程間的時(shí)間間隔

循環(huán)次數(shù):請(qǐng)求的重復(fù)次數(shù) 。

Delay thread Creation until needed:延遲創(chuàng)建線程,直到需要?jiǎng)?chuàng)建時(shí)創(chuàng)建。

(2)調(diào)度器

持續(xù)時(shí)間:測(cè)試計(jì)劃持續(xù)時(shí)間,將覆蓋結(jié)束時(shí)間

啟動(dòng)延遲:測(cè)試計(jì)劃延遲多少時(shí)間啟動(dòng),將覆蓋啟動(dòng)時(shí)間。


3.使用Badboy進(jìn)行腳本錄制

Badboy錄制較簡(jiǎn)單,無(wú)需使用代理;但不能像JMeter代理可以錄制到URL相關(guān)的靜態(tài)文件及dwr請(qǐng)求。

錄制完成后導(dǎo)出為JMeter格式的,然后在JMeter中直接打開(kāi)腳本就可以使用了。

開(kāi)源性能測(cè)試工具JMeter快速入門(二)


4.參數(shù)化

(1)在測(cè)試計(jì)劃中使用“用戶定義變量”,

添加參數(shù),然后找到需要參數(shù)化的腳本,將其值修改為:${key}即可

(2)使用自帶的隨機(jī)函數(shù)

JMeter中有函數(shù)助手,有多個(gè)內(nèi)置函數(shù),可以用相關(guān)函數(shù)進(jìn)行參數(shù)化設(shè)置。

方法:打開(kāi)函數(shù)助手 ,填寫min,max ,函數(shù)名稱,點(diǎn)擊“生成”,復(fù)制生成的隨機(jī)函數(shù)到需要參數(shù)化的地方 。


5.關(guān)聯(lián)

JMeter的關(guān)聯(lián)是基于正則和Xpath Extractor實(shí)現(xiàn)的。

(1)名稱、注釋、Apply to 默認(rèn)即可。

(2)要檢查的響應(yīng)字段 :表示在哪個(gè)地方提取正則表達(dá)式,一般選擇Body即可。

(3)引用名稱:其他地方引用提取值的變量名稱,引用方式為${變量名稱}

(4)正則表達(dá)式,提取的正則表達(dá)式主體

(5)模板,用$$引用起來(lái),正則表達(dá)式的提取模式,值從1開(kāi)始 ,值0對(duì)應(yīng)的是整個(gè)匹配的表達(dá)式。

(6)默認(rèn)值,若返回結(jié)果中無(wú)匹配的值,則變量的值采用默認(rèn)值 。


6.檢查點(diǎn)

JMeter的檢查點(diǎn)是用斷言實(shí)現(xiàn)的,使用較多的是響應(yīng)斷言 。如下添加斷言后,需要在相應(yīng)的監(jiān)聽(tīng)器中添加“斷言結(jié)果”才能在執(zhí)行后查看斷言結(jié)果是否正確。

(1)名稱、注釋、 Apply to 默認(rèn)

(2)要測(cè)試的響應(yīng)字段,文本、代碼均可

(3)模式匹配規(guī)則 :

匹配:需達(dá)到精確匹配

Equals:返回結(jié)果與指定結(jié)果一致

SubString:返回結(jié)果是指定結(jié)果的子串

否:不進(jìn)行匹配

(4)要測(cè)試的模式,若設(shè)置多個(gè)斷言結(jié)果 ,則需要所有結(jié)果通過(guò)才成功 ,否則失敗


7.思考時(shí)間

JMeter的思考時(shí)間是用定時(shí)器實(shí)現(xiàn)的。默認(rèn)時(shí),JMeter發(fā)送請(qǐng)求是沒(méi)有時(shí)間間隔的。添加間隔是為了更真實(shí)模擬用戶請(qǐng)求,同時(shí)可以減少服務(wù)器壓力。無(wú)論定時(shí)器放在哪里 ,它都會(huì)在Sampler前執(zhí)行,若需要在某個(gè)位置暫停,,可加入Test Action。

定時(shí)器的作用域,若在線程組下添加多個(gè)定時(shí)器,則會(huì)累加作用于線程組內(nèi)的所有Sampler,可以在單獨(dú)的Sampler中添加定時(shí)器。


8.集合點(diǎn)

JMeter中使用Synchronizing Timer實(shí)現(xiàn)集合點(diǎn)功能 ,模擬多用戶并發(fā)測(cè)試。

表示集合點(diǎn)夠多少個(gè)用戶才開(kāi)始執(zhí)行并發(fā),在使用中發(fā)現(xiàn)最后一批線程數(shù)不夠時(shí),JMeter會(huì)停止不動(dòng)。


9.結(jié)果分析

開(kāi)源性能測(cè)試工具JMeter快速入門(二)

運(yùn)行性能場(chǎng)景時(shí),開(kāi)啟多個(gè)監(jiān)聽(tīng)器會(huì)消耗資源 。常用的有聚合報(bào)告 、圖形結(jié)果、監(jiān)視器結(jié)果 等等。




四、關(guān)于JMeter小提示


1.盡量少用監(jiān)聽(tīng)器

2.盡量把相似的Sampler放在循環(huán)內(nèi), 使用變量修改這些Sampler,而不是重復(fù)添加Sampler

3.不要使用函數(shù)測(cè)試模式

4.以CSV格式輸出結(jié)果  ,盡量不用XML格式

5.只保存需要的數(shù)據(jù)結(jié)果

6.最好在調(diào)試腳本時(shí)使用斷言,運(yùn)行腳本時(shí)禁用斷言 ,這樣有利于精準(zhǔn)測(cè)試結(jié)果

7.查看結(jié)果樹(shù)和用表格查看結(jié)果監(jiān)聽(tīng)器最好在調(diào)試腳本時(shí)使用,不在負(fù)載測(cè)試期間使用

8.若需要測(cè)試大量數(shù)據(jù),則可以提前準(zhǔn)備好測(cè)試Data并放在數(shù)據(jù)文件中,避免浪費(fèi)資源 。

9.對(duì)于大并發(fā)量的負(fù)載測(cè)試,盡量在多臺(tái)機(jī)器上運(yùn)行多個(gè)非GUI JMeter實(shí)例,進(jìn)行分布式測(cè)試。

10.若測(cè)試過(guò)程中報(bào)內(nèi)存不足, 可以在jmeter的bin目錄下找到j(luò)meter.bat來(lái)修改JVM內(nèi)存設(shè)置,如修改為:HEAP="-Xms512m -Xmx512m"這樣可減小頻繁申請(qǐng)創(chuàng)建、銷毀內(nèi)存引起的性能損耗開(kāi)銷。


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI