《爆肝整理》保姆級系列教學-玩轉Charles抓包神器教學(12)-Charles如何使用Repeat功能進行簡單壓力測試

2023-03-23 18:03:11

1.前言

李四:「今天好累啊,點的我手指都疼了。我一直被要求給後端介面的同事重複傳送請求來偵錯介面。」

Charles:「哎呀,李四同學,你怎麼能一條一條的手動傳送呢 我可是有超級工具:負載測試。」

2.簡介

Repeat英文的意思就是:重複,顧名思義:就是重複請求介面,可以單次請求,一次只請求一次,也可以多次請求,一個執行緒多次請求,也可以設定多個執行緒的並行請求。接下來宏哥將一一介紹。

2.1應用的場景

1.開發要求再次請求一次,那麼直接使用工具

2.模擬N個使用者端同事向伺服器端傳送網路請求

3.Repeat單次請求

Repeat:此功能此功能對於測試同學特別有用,可以檢驗介面的健壯性。對於前端的價值是不需要重新整理頁面,只需要repeat請求,比如檢驗代理是否成功,修改請求後執行等。使用方法:選擇請求後,右擊Repeat就是重複傳送一次請求。

Repeat單次請求Charles有兩種操作方式。具體操作方式如下:

3.1第一種

1.選擇一個或者多個介面,點選主導航欄的快捷操作按鈕 ,如下圖所示:

3.2第二種

1.選擇一個或者多個介面,右鍵,選擇Repeat,如下圖所示:

2.Repeat 前後的對比圖片,根據選擇1801介面原有的請求資料再次發起請求,如下圖所示:

3.再展示一個Repeat 多個介面的場景,如下圖所示:

4.Repeat多次請求

Advanced Repeat可以自定義重複次數和重複間隔,重複傳送多次請求。可以來簡單地測試伺服器的並行處理能力,方法如下:我們在想打壓的網路請求上(POST或 GET 請求均可)右擊,然後選擇 「Repeat Advanced」選單項。然後在彈出的對話方塊中,選擇打壓的並行執行緒數以及打壓次數,確定之後,即可開始打壓。(iteration:迭代次數,Concurrency:並行數,repeat為時間間隔)。

1.選擇某個介面,右鍵,選擇Repeat Advanced ,如下圖所示:

2.彈出Advanced Repeat設定介面,如下圖所示:

Advanced Repeat設定引數說明:

Repeat 1 request :重複1個請求,因為選擇了1個請求,如果選擇了5個請求,這裡就會顯示 Request 5 requests
Iterations :設定每個介面請求多少次
Concurrency:單詞的意思是並行,也可以理解為設定多少個執行緒來完成Iterations設定的請求量
show results in new Session : 將並行的請求內容資料展示在新的session中,也可以理解為重新開啟一個視窗展示Repeat的請求內容。
Repeat delay (ms) :設定每次repeat請求 延遲多長時間 再開始下一個請求 ,單位是ms ,可以選擇是使用固定值,還是用隨機的取值範圍。

4.1單個介面

1.按照前邊的方法進行單個介面的並行設定,如下圖所示:

2.設定完成後,點選「OK」。展示一個單介面的結果,如下圖所示:

4.2多個介面

1.按住鍵盤Ctrl選中多個介面的並行設定,如下圖所示:

2.設定完成後,點選「OK」。展示多個單介面的結果,如下圖所示:

5.小結

charles雖然也能夠進行介面的並行測試,但是比較簡單,也拿不到相關的效能指標,一般是用Jmeter進行介面的效能測試。不過charles的並行操作在日常的測試工作中簡單的壓壓伺服器端的穩定性還是可以滿足的。