Jmeter下載安裝及基本使用

本文將講述Jmeter的下載安裝,並以一個實例來講解如何使用Jmeter。

一、Jmeter下載及安裝部署

下載解壓JMeter壓縮包

下載地址: http://jmeter.apache.org/download_jmeter.cgi
JMeter解壓之後,…\apache-jmeter-4.0\bin\jmeter.bat,打開直接使用,無需安裝。

下載安裝JDK

下載地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
注意根據Jmeter要求的Java版本來下載對應的JDK。如下圖。


環境變量設置

jdk設置
系統變量新建JAVA_HOME,值爲:jdk安裝目錄,如:C:\Program Files\Java\jdk1.8.0_152
系統變量新建CLASSPATH,值爲: %JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
修改系統變量“Path”的值,開始處加上:%JAVA_HOME%/bin

Jmeter設置
系統變量新建JMETER_HOME, 值爲Jmeter路徑,如:D:\apache-jmeter-4.0
修改CLASSPATH,添加:%JMETER_HOME%/lib/ext/ApacheJMeter_core.jar;%JMETER_HOME%/lib/jorphan.jar;%JMETER_HOME%/lib/logkit-2.0.jar

二、Jmeter基本使用

這部分將以實例來切入,以如何設計一個基本的Jmeter測試腳本,需要解決的幾個問題展開:
1. 如何發HTTP請求?
2. 如何靈活讀取參數?(另一篇來詳解)
3. 如何查看分析結果?
4. 如何進行斷言?
5. 如何設置運行場景:用戶數,請求次數,請求時間間隔,或持續請求時間等?
6. 如何編寫程序處理個性化要求?(Beanshell,另一篇來詳解)

如何發HTTP請求?

首先添加線程組,之後添加以下三項:
HTTP請求默認值 (Add->Config element)
HTTP信息頭管理器 (Add->Config element)

HTTP請求 (Add->Sampler)



HTTP請求默認值可以設置其作用範圍內的所有HTTP的默認值,包括HTTP請求的host、端口、協議等


HTTP信息頭管理器,主要用來指定發送請求頭,如下圖:


當然,如果http請求需要有登錄授權做前提,可以添加一個HTTP授權管理器。(Config Element-> HTTP Authorization Manager)

現在回到HTTP請求,進行設置如下圖。


注意:“自動重定向”選項適用於當方法爲“GET”或“HEAD”的時候

到此處,一個基本的HTTP請求已經配置完了,簡單總結下,a)就是HTTP請求需要設置server信息,包括請求的協議(http),請求地址,端口號,HTTP請求的方法(get,post)及請求路徑,同時根據需求來設置隨請求發送的參數。b)進一步如果一個線程組下設置了多個HTTP請求,這些請求都共享一個Server地址,則可以添加HTTP請求默認值,用來統一設置server信息,主要是協議,server地址,端口號。 c) 最後就是根據請求頭(request headers),來設置一個HTTP信息頭管理器。

如何分析結果?

添加監聽器,常用的:線程組->監聽器->聚合報告


Label – Sample的標籤.
# Samples – 同名Label的個數
Average – 平均響應時間
Median – 50%的請求所用的時間不超過該值
90% Line - 90%的請求所用的時間不超過該值
Min – 最小響應時間
Max – 最大響應時間
Error % - 錯誤率
Throughput – 吞吐量,即每秒多少請求
Sent Kb/sec – 吞吐量,每秒多少Kb

還可添加其他監聽器:
查看結果樹
表格方式查看結果
總結報告
響應時間圖

如何進行斷言

常用斷言:線程組->添加斷言->響應斷言
注意點:
當模匹配規則爲“包括”和“匹配”時,支持正則表達式;當爲“Equals”或“Substring”時是完全匹配。


如何設置運行場景?

對線程組進行設置如下:


實際場景中, 可能還需要考慮每個請求之間的時間間隔,稱爲“思考時間”。可以通過定時器來進行設置。
例如:
固定定時器
高斯隨機定時器

定時器的作用域,定時器是在每個sampler之前執行的,而不是之後(無論位置在sampler之前還是下面);當執行一個sampler之前,所有當前作用域內的定時器都會被執行;如果希望定時器僅應用於其中一個sampler,把定時器作爲子節點加入;
如果希望在sampler執行完之後再等待,可以使用TestAction。


編寫用戶程序

我們可能還經常碰到請求需要對參數或結果做一些特殊處理,可能需要用戶編寫額外的程序。此處推薦使用beanshell, 可以兼容java語言,建議在eclipse調試好代碼後,直接複製粘貼過來即可。

Jmeter中Beanshell相關的元器件如下:
BeanShell前置處理器
Beanshell後置處理器
Beanshell斷言
Beanshell定時器

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章