使用Jmeter進行效能測試實戰:詳解HTTP請求和JDBC request進階篇

博為峰網校發表於2021-07-12
Jmeter作為效能或自動化測試工具在開展工作時,其扮演的角色是模擬使用者操作,而後記錄響應結果並統計如響應時間、TPS等效能指標,而實現請求訪問這個場景就要用到工具中取樣器的相關功能。
取樣器的主要用來模擬使用者操作向伺服器發出各位請求,如webservice或Java請求等,然後根據請求獲取對應的響應資訊,同時配合監聽器結果樹等驗證該介面的響應是否合理。在Jmeter中取樣器的種類很多,常見的主要有HTTP請求和JDBC reques兩類。加我VX:atstudy-js 回覆“測試”,進入軟體測試學習交流裙~~
一、HTTP請求
1.首先在測試計劃下新增執行緒組,線上程組中新增取樣器<HTTP請求>,如圖所示:
2.相關引數設定說明:
名稱:定義改取樣器請求目標的標識,可按需設定。
註釋:按需備註,可為空。
基本:
·協議:協議支援“http”和“https”
·伺服器名稱或IP/埠:此處填寫請求的目標服務端地址,埠號預設為80。
·http請求方法:常見的有POST和GET,兩者均作為TCP連結並無本質區別
·路徑:請求資源路徑
·內容編碼:如果內容含有中文一般為utf-8
·自動重定向:針對GET和HEAD請求如包含重定向則可自動跳轉目標頁面,但不記錄前置請求,無法做內容關聯
·跟蹤重定向:Jmeter預設選項可跟蹤定向並將請求返回記錄與結果樹中,可對響應進行關聯。
·使用keepalive:保持http中的請求alive,預設勾選
·對POST使用multipart/form-data、與瀏覽器相容的頭:當方法為post時預設勾選該兩項
高階:
·客戶端實現:選擇http請求方式,常見為HttpClien4和Java。
·超時:連線超時時間、響應等待超時時間
·從HMTL檔案嵌入資源:當需要獲取響應中如圖片、動畫等內容時,勾選此項可對響應HTML進行解析。可以對並行資源進行定義,預設為6
·源地址:此屬性用於實現動態IP訪問,使得Jmeter具有多個IP地址
·代理伺服器:此屬性用於配置網路代理
·其他任務:勾選該項實現對響應報文的篩選,既僅保留響應資料的MD5值,剔除冗餘資訊
二、JDBC Request
JDBC英文名為Java Data Base Connectivity(Java資料庫連線),它是Java程式語言和各類資料庫之間連線標準的Java API,可以認為JDBC規範了它提供的介面,使得由Java編寫的應用程式可以便捷訪問底層資料庫。但不同的資料庫訪問往往需要不同的驅動,所以在使用JDBC取樣前要將目標資料庫驅動放置在Jmeter的lib目錄下,然後配合JDBC Connection Configuration聯通資料庫。加我VX:atstudy-js 回覆“測試”,進入軟體測試學習交流裙~~
1.首先線上程組下新增配置元件->JDBC Connection Configuration:
·Variable Name for created pool: 該變數名與Request中連線池變數名相同
·Max Number of Connections:資料庫連線池的最大連線數
·Max Wait (ms) :連線超時限額,超過反回連線最大等待時間則報錯
·Time Between Eviction Runs (ms):當前連線池保持該時長無互動則關閉
·Auto Commit :自動執行SQL語句
·Transaction Isolation:事務間隔級別設定
·Test While Idle:空閒時判斷連線連線狀態
·Soft Min Evictable Idle Time(ms):連線池閒置狀態下保持連線的最小時長
·validation query:如超5秒無請求則呼叫該SQL測試連線有效性
·Database URL:資料庫地址
·JDBC Driver class:選擇lib目錄下存放對應資料庫的驅動
·Username:資料庫使用者
·Password:資料庫密碼
2.然後在該執行緒組下新增取樣器->JDBC Request:
·Variable name of Pool:資料庫連線池變數名
·Query:填列待執行資料庫SQL
·parameter valus:資料的引數值
·parameter types:資料的引數型別
·variable names:SQL返回的變數名,多個變數以逗號隔開
·result variable name:儲存某變數的全部返回結果(引用${id_n}呼叫多行資料)
·query timeout:查詢超時時間
·handle result set:定義如何處理callable statements語句結果
取樣器作為用來模擬使用者請求操作和獲取返回影響資料的模組,功能類似於LoadRunner中的Vuser;,以上介紹的兩種請求方式可分別實現從前端請求訪問和直接對資料庫進行壓測,作為自動化測試和效能測試的前置步驟,HTTP和JDBC使用頻次高較為常見,日常測試中需要熟練掌握。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31407649/viewspace-2780918/,如需轉載,請註明出處,否則將追究法律責任。

相關文章