不可不知的輔助測試的Fiddler小技巧

2022-06-02 19:51:07 字數 2727 閱讀 1339

在以前的博文中,時常有分享fiddler的一些使用技巧,今天再貼下。

fiddler抓包工具使用詳解

利用fiddler攔截介面請求並篡改資料

fiddler使用過程中容易忽略的小技巧

mock測試,結合fiddler輕鬆搞定不同場景

以上這些,就是以前的一些實踐總結。今天,再來分享乙個不可不知的小技巧,實際工作當中,是可以輔助自己完成測試的。

啟動fiddler工具》找到fiddlerscript頁籤》按m_simulatemodem搜尋。

找到如下所示內容【限速函式】,修改引數即可:

修改**中的引數,將300修改為3000,也就是3s,如下:

if (m_simulatemodem)
此時,儲存修改後的script**即可,如下所示:

資料儲存後,如何使其生效呢?按如下操作即可。

在fiddler中,按如下路徑配置即可:rules>performance>simulate modem speeds。

具體操作,如下圖所示:

此時,再重新整理頁面,我們可以從fiddler面板中的time引數看出,每個介面的響應時間都延時3s,如下所示:

網路延遲時間如何計算?

比如你要模擬上傳速度100kbps的網路,那上傳延遲就是1kb/100kbps=0.01s=10ms,就改成10。

我們從上述操作看出,配置限速引數後,每個介面都是固定的延遲時間。但實際使用場景中,這種情況是比較少的。基本上都是有時快,有時慢的情況。那是否可以設定隨機延遲呢?答案肯定是可以的。我們繼續來看。

我們依然在fiddlerscript頁籤中操作,加入如下**,**如下所示:

static function randint(min, max) 

if (m_simulatemodem)

儲存修改後的**,並重新啟用配置即可。

測試過程中,想模擬乙個介面請求,一般是通過postman、jmeter、soupui,常用的是postman。我們fiddler能不能模擬介面請求呢?這個是可以的,我們來看。

我們切換到composer頁籤,如下所示:

從圖中可知,是可以模擬很多種請求方式的。我們就來實際操作一番。

我們先來操作個post請求,選擇post請求方式,填寫介面與引數如下:

介面與引數填寫正確後,點選右上角的execute按鈕即可請求介面。我們來看下請求資料:

我們先來看請求頭,介面請求頭中的user-agent引數,如下所示:

使用者****是fiddler,就是剛才我們通過fiddler工具請求的資料。

我們再來看響應,介面請求成功,正常響應並獲取到token資料,如下所示:

剛才操作的是post請求,現在來看個get請求。操作方式都一樣,將請求方式切換成get,填寫介面與引數,並點選execute按鈕,配置如下所示:

我們依然來看介面資料,先看請求頭引數:

user-agent引數依然是fiddler,說明是從fiddler工具中發出的請求。

再來看響應資料,如下所示:

以上就是通過fiddler模擬請求post和get請求了,其他方式類似。

在我們測試中,也會關注到,乙個介面同時請求多次,會不會產生錯誤,比如:重複資料。那這次就需要考慮併發情況了。

fiddler工具依然還是支援該操作,具體如下:

我們先選中已抓取的任一介面,點選右鍵,並選擇replay>reissue sequentially,也可以快捷鍵【shift + r】如下所示:

點選後,會彈出如下彈框,設定請求次數,如下所示:

預設是5,那我們改成3,並點選ok按鈕,來看介面,如下所示:

我們可以看到,同時請求了3次,簡單模擬了併發測試,但實際是不及jmeter工具的,畢竟這個也只是模擬,而jmeter要專業許多。

了解完了併發使用,但還有些其他引數沒有介紹,我們來了解下其他引數,說不准以後也有用途。如下所示:

不知為何會出現,不帶該引數的情況。有遇到的博友,望提點一二。

好了,今天的這三個fiddler技巧,就分享到這了,個人覺得在實際測試過程中,這三個技巧還是有幫助的。

不可不知的健康知識

健康最重要 晚上9 11點為免疫系統 淋巴 排毒時間,此段時間應安靜或聽 晚間11 凌晨1點,肝的排毒,需在熟睡中進行。凌晨1 3點,膽的排毒,亦同。凌晨3 5點,肺的排毒。此即為何咳嗽的人在這段時間咳得最劇烈,因排毒動作已走到肺 不應用止咳藥,以免抑制廢積物的排除。凌晨5 7點,大腸的排毒,應上廁...

不可不知的sudo命令

在linux運維工作中,每個人都應該各司其職。比如說運維經理掌握了root使用者,普通的運維人員一般人手乙個普通登入使用者。root使用者不簡單啊,建立使用者,日常重啟伺服器工作,以及一些其他的日常工作都是root使用者來完成的!很厲害吧!雖然運維經理是乙個super man,但是人家畢竟是經理嘛!...

不可不知的sudo命令

在linux運維工作中,每個人都應該各司其職。比如說運維經理掌握了root使用者,普通的運維人員一般人手乙個普通登入使用者。root使用者不簡單啊,建立使用者,日常重啟伺服器工作,以及一些其他的日常工作都是root使用者來完成的!很厲害吧!雖然運維經理是乙個super man,但是人家畢竟是經理嘛!...