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

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

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

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

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