天天看點

使用Jmeter過程中遇到的問題

學習接口自動化測試架構或工具,UI自動化測試架構或工具,有時會覺得知識似乎比較零散,死記硬背不是一個好方法。一個學習的思路是思考使用這些架構或工具的時候,可能會遇到什麼問題,遇到這些問題可以通過什麼方法來解決。

項目中沒有完整的接口文檔,甚至沒有接口文檔

使用jmeter錄制功能

使用fiddler抓包

請求開發協助

需要在多個環境進行測試

使用配置原件http請求預設值

統一管理

快速切換測試環境

需要調試腳本

使用監聽器元件檢視結果樹

可以分析檢視某個請求的詳情

請求頭

請求體

響應頭

響應體

可以分析錯誤的原因

僅檢視錯誤日志

使用Debug Sampler

如使用正規表達式提取字段時,我們需要檢查提取的字段是否正确。

可以輸出Jmeter的變量、屬性甚至是系統屬性而不用發送真實的請求到伺服器。

使用HTTP Mirror Server

它可以在本地臨時搭建一個HTTP伺服器,該伺服器把接收到的請求原樣傳回,這樣就可以看到發送出的請求的具體内容,以供調試。

需要對請求封包加密後再進行發送

使用前置處理器

一般的加密算法

自定義的加密算法,需要開發給jar包

需要進行參數化

檔案參數化

函數參數化

變量參數化

需要進行分布式壓測

一台機器不能産生所需要的壓力,這是需要引入分布式壓測

需要嚴格的并發

引入同步定時器,類似LR集合點概念

需要進行關聯操作

正規表達式提取式

json提取

需要測試dubbo接口

引入dubbo插件

需要分析性能瓶頸

引入監控平台

普羅米修斯

需要跨線程組應用變量

需要生成較美觀的測試報告

jmeter自帶的測試報告

需要內建到CI/CD

Jenkins+Jmeter持續內建

需要模拟使用者行為

固定定時器

jmeter發送請求之間是沒有停留的,模拟使用者習慣

需要進行斷言

Response Assertion(響應斷言)

對Web請求的響應結果進行驗證

使用Jmeter過程中遇到的問題

Size Assertion(資料包位元組大小斷言)

判斷響應結果是否包含正确數量的byte。可定義(=, !=, >, <, >=, <=)

使用Jmeter過程中遇到的問題

Duration Assertion(持續時間斷言)

判斷是否在給定的時間内傳回響應結果

使用Jmeter過程中遇到的問題

beanshell 斷言(自由斷言)

需要設定場景邏輯

引入邏輯控制器

需要自動管理cookie

引入http cookie管理器

需要測試之後重置資料

繼續閱讀