1.文檔前提說明
1)本文使用jmeter的版本為 apache-jmeter-2.13 及以上版本
2)java版本要求在 1.8.0 以上
注:jmeter版本一般和java相應的版本一起使用,如果jmeter版本和java版本不對應(不對應指java版本過低,如jmeter為V2.13而jdk為1.6),會導致某些功能不能正常使用.
2.jmeter 錄制網絡請求
2.1 添加jmeter代理服務器
在jmeter 工作台添加 HTTP代理服務器
代理服務器如圖所示:
2.2 代理服務器詳細說明
1.名稱:代理服務器名稱,可以自定義
2.注釋:對此代理服務器的說明,可自定義,默認為空
3.Global Settings
端口:jmeter代理服務器端口
HTTPS Domains:https協議要監聽的域名,如訪問www.example.org,可以用*.example.org來表示
4.Test plan content
目標控制器:下拉選項,表明在哪個模塊下面保存錄制的請求,建議增加【錄制控制器】,在【錄制控制器】下保存錄制的請求,如圖:
分組:下拉框;對錄制的請求按照一定方式進行進行分組,一般默認使用【不對樣本分組】即可
記錄http信息頭、添加斷言、Regex matching:勾選框;記錄每個請求的request header、斷言、正則表達式匹配等,錄制一般使用默認勾選就行
5.HTTP Sampler settings
Type:http采樣器的type類型,默認為空
Prefix:對每個錄制的http請求的前綴命名,默認為空,則錄制的請求會按照數字遞增的方式進行命名,如:0,1,2......
自動重定向:勾選框;表示請求是否自動重定向
跟隨重定向:勾選框;表示請求是否跟隨重定向
User KeepAlive:勾選框;表示此http請求的TCP鏈接是否保持不中斷
從HTML文件獲取所有內涵的資源:勾選框,表示是否獲取html文件中的資源信息,錄制時一般默認不勾選
6.Content-Type filter
Include:Content-Type的白名單,表示那些Content-Type可以通過
Exclude:Content-Type黑名單,表示那些Content-Type被拒絕
7.包含模式:表示哪些請求信息會被錄制,如:*.html
8.排除模式:表示那些請求信息不會被錄制,可點擊Add suggested Excludes使用默認排除方式,如下圖,表示.bmp、.css、.gif等后綴的相應信息不會被錄制
9.Notify Child Listeners of filtered samplers:是否喚起過濾取樣器的后台監聽,默認勾選即可
2.2 添加HTTPS請求所需證書
由於https請求需要客戶端與服務器建立簽證,如果使用代理服務器,代理服務器沒有證書,所以https協議不能正常通信;jmeter提供了相應的證書,可以使https協議正常通信,安裝步驟如下:
1.chrome瀏覽器–【設置】–【管理證書】
2.點擊【+】號,添加jmeter根證書,默認在jmeter目錄/bin目錄下
3.將證書設置為永久信任
2.3 設置網絡代理服務器
在【系統偏好設置】--【網絡】--【高級】--【代理】找到【web代理(http)】和【web安全代理(https)】,勾選啟動,設置代理服務器的主機和端口
,一般主機為本機地址(127.0.0.1),端口號與jmeter代理服務器中設置的端口號相一致
2.4 啟動代理服務器,錄制請求
點擊HTTP代理服務器中的【啟動】按鈕,則可以在選擇的【目標控制器】模塊下面看到錄制的請求信息
3.其他注意事項
1.在代理模式下,如果網頁有上傳文件的操作會失敗,原因如下:
Some browsers (e.g. Firefox and Opera) don't include the full name of a file when uploading files. This can cause the JMeter proxy server to fail. One solution is to ensure that any files to be uploaded are in the JMeter working directory, either by copying the files there or by starting JMeter in the directory containing the files.
解決方法:
將上傳文件拷貝到jmeter/bin目錄下上傳即可
2.cookie管理收集;如果請求信息需要攜帶cookie,則在錄制的【目標控制器】模塊下添加【HTTP COOKIE 管理器】,jmeter會將cookie信息收集,然后下一步請求會自動攜帶