Jmeter 创建一个web测试计划
Jmeter 創(chuàng)建一個(gè)web測(cè)試計(jì)劃
by:授客 QQ:1033553122
1.?? 下載Jmeter
下載地址:http://jmeter.apache.org/download_jmeter.cgi
下載后解壓到你想“安裝”的路徑下,比如:
D:\Program Files (x86)\Jemter\apache-jmeter-2.11
?
2.?? 配置環(huán)境變量
新建JMETER_HOME系統(tǒng)環(huán)境變量,值設(shè)置為Jmeter所在的路徑,
D:\Program Files (x86)\Jemter\apache-jmeter-2.11
?
?
?
注意:JMeter JVM兼容版本為JVM6或更高版本
?
3.?? 運(yùn)行Jemeter
雙擊bin目錄下的jmeter.bat,打開界面
?
4.?? 創(chuàng)建測(cè)試計(jì)劃
測(cè)試計(jì)劃描述了Jmeter運(yùn)行時(shí)會(huì)執(zhí)行的一系列步驟
創(chuàng)建web 測(cè)試計(jì)劃
?
?步驟1:添加用戶
添加一個(gè)線程組(Thread Group)元素,線程組元素告訴Jmeter你想模擬的用戶數(shù)量,用戶發(fā)送請(qǐng)求頻率及發(fā)送請(qǐng)求數(shù)。
右鍵測(cè)試計(jì)劃,添加線程組(Add --> ThreadGroup)
?
?
?
添加線程組后
?
?
線程數(shù)(Number of Threads(users)):也就是要模擬的用戶數(shù)
?
Ramp-Up Period(in seconds):告訴Jmeter開啟每個(gè)用戶之間的時(shí)間間隔。如果我們有5個(gè)用戶,并設(shè)置Ramp-Up Period(in seconds)為5秒,那么開啟每個(gè)用戶的時(shí)間間隔為1秒(5 users / 5 seconds = 1 user per second)。如果你設(shè)置為0,那么Jmeter將立即開啟所有用戶(線程)。
?
循環(huán)次數(shù)(Loop Count):告訴Jmeter重復(fù)運(yùn)行多少次測(cè)試。如果選擇永遠(yuǎn)(Forever),那么將一直重復(fù)運(yùn)行。
?
設(shè)置后
?
?
備注:Jmeter的設(shè)置是即時(shí)保存的
?
步驟2:添加默認(rèn)的HTTP請(qǐng)求屬性
定義用戶將要執(zhí)行的任務(wù)(這里可采用默認(rèn)設(shè)置)
右鍵線程組,添加默認(rèn)的HTTP請(qǐng)求默認(rèn)值(Add --> Config Element --> HTTP Request Defaults)
?
?
?
?
?
服務(wù)器名稱或(Server Name Or IP). 對(duì)于你創(chuàng)建的測(cè)試計(jì)劃來說,所有http請(qǐng)求將發(fā)送到該服務(wù)器。
?
例中,測(cè)試僅填寫域名,jmeter.apache.org,如下,其它保留默認(rèn)值
?
?
步驟3:添加Cookie支持
幾乎所有的web測(cè)試都應(yīng)該使用cookie支持,除非應(yīng)用程序特地指明了不使用cookie。僅需添加一個(gè)HTTP Cookie管理器(HTTP Cookie Manager)來添加cookie支持。這將保證每個(gè)線程可以獲得自己的cookie,但是cookie為所有HTTP請(qǐng)求對(duì)象共享。
?
右鍵線程組,添加HTTP Cookie Manager(Add --> Config Element --> HTTP Cookie Manager)
?
?
?
步驟4:添加HTTP請(qǐng)求
右鍵線程組,添加http請(qǐng)求(Add --> Sampler --> HTTP Request)
?
?
例中,添加2個(gè)http請(qǐng)求。第一個(gè):Jmeter主頁(yè)(http://jmeter.apache.org/), 第二個(gè):Changes頁(yè)面(http://jmeter.apache.org/changes.html).
Jmeter按它們出現(xiàn)在左側(cè)樹中的順序發(fā)送請(qǐng)求。
設(shè)置路徑(Path): /
記住:沒必要再設(shè)置服務(wù)器名(Server Name),你已經(jīng)在HTTP Request Defaults元素中設(shè)置了該值。?
?
?
?
步驟5:添加一個(gè)監(jiān)聽器來查看保存的測(cè)試結(jié)果
監(jiān)聽器是你最后需要添加一個(gè)元素.該元素負(fù)責(zé)將所有HTTP請(qǐng)求結(jié)果存儲(chǔ)在一個(gè)文件中并且以可展示視化數(shù)據(jù)模型.
右鍵線程組,添加圖形結(jié)果監(jiān)聽器( Graph Results listener) (Add --> Listener --> Graph Results).
?
?
然后,指定目錄和輸出文件名
?
?
備注:輸入不存在的文件名,打開時(shí)會(huì)報(bào)錯(cuò),但是不影響。測(cè)試完成后自動(dòng)新建指定的文件并保存數(shù)據(jù)。
?
?
運(yùn)行
?
?
步驟6:登錄網(wǎng)站
這本與案例無關(guān),但是有些web站點(diǎn)要求執(zhí)行特定操作前必須先登錄網(wǎng)站。在一個(gè)web瀏覽器中,登陸表現(xiàn)為代表用戶名和密碼的表單以及提交表單的按鈕。點(diǎn)擊提交按鈕時(shí),生成一個(gè)POST請(qǐng)求,把表單項(xiàng)的值作為參數(shù)傳遞。
?
為了實(shí)現(xiàn)登錄,添加一個(gè)HTTP請(qǐng)求,并設(shè)置方法為POST。需要知道表單使用的域的名稱及目標(biāo)頁(yè)面,這可以通過檢查登錄頁(yè)面的的代碼中查找到【如果你覺得這很難,你可以用Jmeter ?Proxy Recorder錄制登錄操作】。
?
如下,設(shè)置提交按鈕的目標(biāo)頁(yè)面的路徑,點(diǎn)擊添加按鈕,輸入用戶名和密碼詳細(xì)信息.有時(shí)候登錄表單會(huì)包含隱含信息,這些也需要添加
?
?
?
?
高級(jí)設(shè)置
1. 使用HTTP URL Re-writing Modifier
如果你的web應(yīng)用程序使用了URL重寫技術(shù),而不是使用會(huì)話cookie,那么需要做點(diǎn)額外的工作來測(cè)試你的網(wǎng)站。
?
Jmeter需要解析從服務(wù)器下載的HTML并接收唯一的會(huì)話ID來正確響應(yīng)URL重寫。使用合適的 HTTP URL Re-writing Modifier來完成這個(gè)任務(wù)。
?
?
簡(jiǎn)單的在修飾符中輸入會(huì)話ID參數(shù)名,它將查找給定參數(shù)并將參數(shù)添加到每個(gè)請(qǐng)求中,如果請(qǐng)求已經(jīng)擁有參數(shù)值了,則將替換原有參數(shù)值。. 如果勾選“Cache Session ID?”(是否緩存會(huì)話ID),那么最后一次緩存的會(huì)話ID將被保存,并且如果前一個(gè)HTTP實(shí)例沒包含會(huì)話ID,那么將使用該會(huì)話ID
?
?
注意:
1.URL Re-writing modifier添加到簡(jiǎn)單控制器(SimpleController),這樣,它僅影響位于SimpleController下的請(qǐng)求.
?
說明:?
如果勾選【路徑擴(kuò)展(使用”;”作為分隔符)】復(fù)選框,那么意味著會(huì)話ID應(yīng)該作為路徑的一部分(由一個(gè)”;”分割),而不是一個(gè)請(qǐng)求參數(shù)
?
2.使用請(qǐng)求頭管理器(Header Manager)
HTTP Header Manager讓你可以自定義Jmeter在HTTP request header中發(fā)送的信息。 請(qǐng)求包含類似"User-Agent", "Pragma", "Referer"等等屬性
The HTTP Header Manager , 類似 HTTP Cookie Manager , 應(yīng)該添加到線程組,除非出于某些原因,你想為不同的HTTP請(qǐng)求對(duì)象指定不同的請(qǐng)求頭。
?
?
?
?
?
?
參考連接:
http://jmeter.apache.org/usermanual/get-started.html
http://jmeter.apache.org/usermanual/build-web-test-plan.html?
?
轉(zhuǎn)載于:https://www.cnblogs.com/shouke/p/10158148.html
總結(jié)
以上是生活随笔為你收集整理的Jmeter 创建一个web测试计划的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cocos2dx中的用户数据的管理
- 下一篇: 第22章 变易算法