文章目錄
- 一、jmeter的安裝
-
- 1、安裝配置JDK
- 2、安裝配置Jmeter
- 3、Jmeter常用控件
- 二、Jmeter函數
- 三、正規表達式提取器
一、jmeter的安裝
1、安裝配置JDK
- 1.下載下傳并且安裝JDK
-
2.配置JAVA環境變量:右鍵計算機屬性>>進階系統設定>>環境變量>>添加如下的系統變量
變量名:【JAVA_HOME】
變量值:【C:\Program Files\Java\jdk1.8.0_131】
變量名:【CLASSPATH】
變量值:【.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar】(切記.不可以丢)
- 3.校驗JDK:打開cmd,輸入java -version>>如果顯示jdk版本就表示jdk安裝成功了。
2、安裝配置Jmeter
- 1.下載下傳解壓Jmeter安裝包,官網:(http://jmeter.apache.org/download_jmeter.cgi)
-
2.配置Jmeter的環境變量:
變量名:【JMETER_HOME】
變量值:【I:\tools\xxxx\jmeter\apache-jmeter-4.0\apache-jmeter-4.0】(根據自己的jmeter解壓路徑填寫)
變量名:【CLASSPATH】
變量值:【.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar】
- 3.啟動Jmeter:輕按兩下Jmeter解壓路徑(apache-jmeter-4.0\bin)的bin下面的jmeter.bat
3、Jmeter常用控件
測試計劃(Test Plan)
控件截圖:

Test Plan包含了一個測試額所有内容,包含了所有的控件,屬性變量。是以隻有一個測試計劃。它還可以定義變量,引入jar包,編輯測試模式等等。
工作台:
控件截圖:
- 工作台是控件暫存的地方,在測試過程中可以把暫時不用的控件放在這裡,等測試完成後再放回去。
- 注意:工作台中的控件不會儲存在jmx檔案中,是以,如果關閉jmeter,工作台中的控件會丢失。
線程組(Thread Group)
控件截圖:
線程組即虛拟使用者組
使用者定義變量
控件截圖:
- 注意事項:
注意變量的作用域,不同線程間變量不共享
線程組右擊-添加-配置元件-使用者定義的變量
添加-名稱-變量名
然後将自己配置的名稱将原值,調整線程組參數,設定循環次數,最後進行替代運作即可。
CSV Data Set Config
它就是一個讀取txt,csv格式的測試資料的控件
在指定目錄下建立一個txt檔案
設定CVS 配置參數
CSV Data Set Config各個參數的簡要說明:
FileName:csv檔案或txt檔案路徑,可用相對路徑
File Encoding: 檔案編碼格式設定
Varible Names: 定義文本檔案中的參數名,可設定多個參數,參數之間逗号分隔.定義後可在腳本中引用,引用方式${name}
Delimiter(use "\t" for tab):指定參數分隔符号
Allow Quoated data: 是否允許引用資料
Recycle on EOF: 是否循環取值
Stop Thread on EOF: 當Recycle on EOF為false并且Stop Thread on EOF為true,則讀完csv檔案中的記錄後,停止運作
Sharing Mode: 設定是否線程共享
定時器(Timer)
sampler(采樣器)之前執行;如果隻想應用于部分sampler,需要将定時器加入子節點;簡單了解類似于loadrunner中的思考時間,控制sampler的間隔時間。
控件截圖:
-
固定定時器:
就是設定 請求間隔時間
- 注意事項:
需要注意的是,固定定時器的延時不會計入單個sampler的響應時間,但會計入事務控制器的時間。
對于一個sampler來說,定時器相當于loadrunner中的pacing(了解就是一組請求操作的等待時間);對于"事務控制器"來說,定時器相當于loadrunner中的think time(單次操作的等待時間或間隔時間)
-
斷言(Assertions)
解釋:判斷請求響應值的正确性的控件
-
響應斷言:
了解:判斷Reponse是否正确
注意事項:
斷言要放在請求内
-
圖形結果:
控件截圖:
jmeter安裝配置和基本操作一、jmeter的安裝二、Jmeter函數三、正規表達式提取器 - 參數含義:
樣本數目:總共發送到伺服器的請求數。
最新樣本:代表時間的數字,是伺服器響應最後一個請求的時間。
吞吐量:伺服器每分鐘處理的請求數。
平均值:總運作時間除以發送到伺服器的請求數。
中間值:代表時間的數字,有一半的伺服器響應時間低于該值而另一半高于該值。
偏離:伺服器響應時間變化、離散程度測量值的大小,或者,換句話說,就是資料的分布。
注意事項:圖形結果本身會影響Jmeter的性能
- 檢視結果樹
可用于調試,檢視請求響應的資料,測試的結果,請求的内容。
控件截圖:
參數含義:
取樣器結果執行個體:
請求執行個體截圖:
響應資料執行個體截圖:
聚合報告:
控件截圖:
參數含義:
Label:每個 JMeter 的 element(例如 HTTP Request)都有一個 Name 屬性,這裡顯示的就是 Name 屬性的值
#Samples:表示你這次測試中一共發出了多少個請求,如果模拟10個使用者,每個使用者疊代10次,那麼這裡顯示100
Average:平均響應時間——預設情況下是單個 Request 的平均響應時間,當使用了 Transaction Controller 時,也可以以Transaction 為機關顯示平均響應時間
Median:中位數,也就是 50% 使用者的響應時間
90% Line:90% 使用者的響應時間
Min:最小響應時間
Max:最大響應時間
Error%:本次測試中出現錯誤的請求的數量/請求的總數
Throughput:吞吐量——預設情況下表示每秒完成的請求數(Request per Second),當使用了 Transaction Controller 時,也可以表示類似 LoadRunner 的 Transaction per Second 數
KB/Sec:每秒從伺服器端接收到的資料量,相當于LoadRunner中的Throughput/Sec
二、Jmeter函數
函數助手
打開位置:選項——函數助手
控件截圖:
函數執行個體:
${__time(YMD)}:目前日期函數
${__time(YMDHMS)}:目前四件函數
${__MD5(${fkeystr_no_register})}:MD5加密函數
更多可檢視函數助手的幫助頁面
函數調用:
選擇想要使用的函數
輸入想要使用函數的值
點選生成
然後将所得字元串複制到要使用的位置即可
三、正規表達式提取器
- 運用Jmeter正則提取器,可以從請求的響應結果中取到需要的内容,進而實作關聯。關聯是請求與請求之間存在資料依賴關系,需要從上一個請求擷取下一個請求需要回傳回去的資料
名稱及注釋
說明:
- (1)引用名稱:下一個請求要引用的參數名稱,如填寫title,則可用${title}引用它。
-
(2)正規表達式:
():括起來的部分就是要提取的。
.:比對任何字元串。
+:一次或多次。
?:不要太貪婪,在找到第一個比對項後停止。
- (3)模闆:用KaTeX parse error: Can't use function '$' in math mode at position 28: …式中有多個正規表達式,則可以是$̲23$等等,表示解析到的第幾個值給title。如: 1 1 1表示解析到的第1個值
- (4)比對數字:0代表随機取值,1代表全部取值,通常情況下填0
- (5)預設值:如果參數沒有取得到值,那預設給一個值讓它取.
案例