您的位置:軟件測(cè)試 > 開(kāi)源軟件測(cè)試 > 開(kāi)源性能測(cè)試工具 > Jmeter
初識(shí)jmeter
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2014/3/21 14:28:26 ] 推薦標(biāo)簽:jmeter 性能測(cè)試 開(kāi)放源代碼

1. jmeter環(huán)境準(zhǔn)備及運(yùn)行
jmeter是Apache 組織的開(kāi)放源代碼項(xiàng)目,是一個(gè)純java桌面應(yīng)用,主要用于壓力測(cè)試和性能測(cè)試
jmeter下載地址:http://jmeter.apache.org/download_jmeter.cgi
安裝需求:
1.1 java版本:在JVM1.5或者更高版本上(java環(huán)境配置此處不多?嗦)
1.2 操作系統(tǒng):可以在任何一個(gè)部署了java的系統(tǒng)上運(yùn)行
1.3 jmeter下載完成后,放置某個(gè)目錄下,解壓,只需運(yùn)行bin目錄下:jmeter.bat(也可以建立桌面快捷方式)可以運(yùn)行jmeter,運(yùn)行界面如下

2. jmeter學(xué)習(xí)
2.1 基本概念
1. 測(cè)試計(jì)劃:是使用jmeter進(jìn)行測(cè)試的起點(diǎn),它是其它jmeter測(cè)試元件的容器
2. 線程組:代表一定數(shù)量的并發(fā)用戶,可以用來(lái)模擬并發(fā)用戶的發(fā)送請(qǐng)求。實(shí)際的請(qǐng)求內(nèi)容再sampler中定義,它被線程組包含,可以在測(cè)試計(jì)劃-->添加-->線程組來(lái)建立,在線程組面板里有幾個(gè)輸入欄:線程數(shù)、Ramp-Up Period(in seconds)、循環(huán)次數(shù),其中Ramp-Up Period(in seconds)表示在這時(shí)間內(nèi)創(chuàng)建完所有的線程。如有8個(gè)線程,Ramp-Up = 200秒,那么線程的啟動(dòng)時(shí)間間隔為200/8=25秒,這樣的好處是:一開(kāi)始不會(huì)對(duì)服務(wù)器有太大的負(fù)載。線程組是為模擬并發(fā)負(fù)載而設(shè)計(jì)。
3. 取樣器(Sampler):模擬各種請(qǐng)求。所有實(shí)際的測(cè)試任務(wù)都由取樣器承擔(dān),存在很多種請(qǐng)求。如:HTTP請(qǐng)求
4.監(jiān)聽(tīng)器:負(fù)責(zé)收集測(cè)試結(jié)果,同時(shí)也被告知了結(jié)果顯示的方式。功能是對(duì)取樣器的請(qǐng)求結(jié)果顯示、統(tǒng)計(jì)一些數(shù)據(jù)(吞吐量、KB/S……)等。
5.斷言:用于來(lái)判斷請(qǐng)求響應(yīng)的結(jié)果是否如用戶所期望,是否正確。它可以用來(lái)隔離問(wèn)題域,即在確保功能正確的前提下執(zhí)行壓力測(cè)試。
6.定時(shí)器:負(fù)責(zé)定義請(qǐng)求(線程)之間的延遲間隔,模擬對(duì)服務(wù)器的連續(xù)請(qǐng)求。
7. 邏輯控制器:允許自定義JMeter發(fā)送請(qǐng)求的行為邏輯,它與Sampler結(jié)合使用可以模擬復(fù)雜的請(qǐng)求序列。
8.配置元件維護(hù)Sampler需要的配置信息,并根據(jù)實(shí)際的需要會(huì)修改請(qǐng)求的內(nèi)容。
9. 前置處理器和后置處理器負(fù)責(zé)在生成請(qǐng)求之前和之后完成工作。前置處理器常常用來(lái)修改請(qǐng)求的設(shè)置,后置處理器則常常用來(lái)處理響應(yīng)的數(shù)據(jù)。

3. 關(guān)于Aggregate Report (聚合報(bào)告)解析
Aggregate Report是JMeter常用的一個(gè)Listener,中文被翻譯為“聚合報(bào)告”。
如果是做Web應(yīng)用的性能測(cè)試,例如只有一個(gè)登錄的請(qǐng)求,那么在Aggregate Report中,會(huì)顯示一行數(shù)據(jù),共有10個(gè)字段,含義分別如下。
Label:每個(gè)JMeter的element(例如HTTP Request)都有一個(gè)Name屬性,這里顯示的是Name屬性的值
#Samples:表示你這次測(cè)試中一共發(fā)出了多少個(gè)請(qǐng)求,如果模擬10個(gè)用戶,每個(gè)用戶迭代10次,那么這里顯示100
Average:平均響應(yīng)時(shí)間——默認(rèn)情況下是單個(gè)Request的平均響應(yīng)時(shí)間,當(dāng)使用了Transaction Controller時(shí),也可以以Transaction為單位顯示平均響應(yīng)時(shí)間
Median:中位數(shù),也是50% 用戶的響應(yīng)時(shí)間
90% Line:90% 用戶的響應(yīng)時(shí)間
Note:關(guān)于50% 和90% 并發(fā)用戶數(shù)的含義,
Min:小響應(yīng)時(shí)間
Max:大響應(yīng)時(shí)間
Error%:本次測(cè)試中出現(xiàn)錯(cuò)誤的請(qǐng)求的數(shù)量/請(qǐng)求的總數(shù)
Throughput:吞吐量——默認(rèn)情況下表示每秒完成的請(qǐng)求數(shù)(Request per Second),當(dāng)使用了Transaction Controller時(shí),也可以表示類似LoadRunner的Transaction per Second數(shù)
KB/Sec:每秒從服務(wù)器端接收到的數(shù)據(jù)量,相當(dāng)于LoadRunner中的Throughput/Sec

軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd