文章目錄
- 一、與F12對比
- 二、核心作用
- 三、原理
- 四、配置
- 1.Rules:
- 2.配置證書抓取https包
- 3.設置過濾器
- 4、抓取App包
- 五、模擬弱網測試
- 六、調試
- 1.線上調試
- 2.斷點調試
- 七、理論
- 1.四要素
- 2.如何定位前后端bug
- 注
一、與F12對比
相同點: 都可以對http和https請求進行抓包分析。
不同點: F12無法抓取app端的請求、無法修改請求數據,而fiddler可以。
二、核心作用
1.接口測試: 發送自定義的請求、模擬小型接口測試。
2.定位前后端bug: 抓取協議包、前后端聯調。
3.構建模擬測試場景: 數據篡改、重定向。
4.弱網測試: 模擬限速操作、弱網、斷網。
5.前端性能分析及優化
三、原理
是一個代理服務器,其工作原理是通過代理服務器機制來截獲和轉發客戶端與服務器之間的網絡請求和響應。Fiddler使用代理地址127.0.0.1和默認端口8888,當客戶端(如瀏覽器)發送網絡請求時,這些請求首先被Fiddler截獲,而不是直接發送到目標服務器。?
四、配置
1.Rules:
(1)隱藏不需要的數據包: 勾選Hide CONNECTs 和Hide 304s。
(2)進行斷點調試: Automatic Breakpoints。
(3)弱網測試設置: Customize Rules…
2.配置證書抓取https包
(1).打開Tools下options中https選項: 勾選Capture HTTPS CONNECTS(捕獲https連接)、Decrypt HTTPS traffic(解密https通過)、Ignore server…。
(2)在connections里面設置配置信息: 勾選Allow remote computers to connect等。
(3)重置更新證書:
點擊Option的HTTPS中Actions后,進行一直下一步操作。
3.設置過濾器
作用: 只抓取需要的數據包內容
4、抓取App包
1.打開模擬器—>設置—>網絡—>設置代理服務主機名(在命令提示符中輸入ipconfig)和端口號—>在模擬器中安裝和fiddler同樣的證書。
2.發送請求。
五、模擬弱網測試
給代理設置不同的網絡情況。
(1)設置網絡傳輸值: 在Customize Rules…中找到下列代碼進行更改。
if(m_SimulateModem){// Delay sends by 300ms per KB uploaded.oSession["request-trickle-delay"] ="300";// Delay sends by 150ms per KB downloaded.oSession["response-trickle-delay"] ="150";
}
2G:
oSession["request-trickle-delay"] ="500";
oSession["response-trickle-delay"] ="400";
3G:
oSession["request-trickle-delay"] ="100";
oSession["response-trickle-delay"] ="100";
4G:
oSession["request-trickle-delay"] ="15";
oSession["response-trickle-delay"] ="10";
改完后記得保存。
(2)設置:
在Rules下Performance中,點擊后勾選Simulate Modem Speeds。
去掉勾選即可關閉。
六、調試
1.線上調試
1.復制響應信息中SyntaxView的內容到,XXX.html的新建文件中。
2.右鍵編輯XXX.html。
3.在fiddler中,選中AutoResponder,如上截圖進行操作。
4.刷新網頁界面,可看到內容已經修改。
2.斷點調試
1.查看登錄的webforms請求參數信息。
2.打開斷點調試(Automatic Breakpints)
3.在請求之前修改參數信息進行發送。
攔截請求成功截圖(可修改Body內容并查看響應信息):
七、理論
1.四要素
請求四要素: 請求頭、請求路徑、請求方式、請求參數。
響應四要素: 響應頭、響應碼、響應信息、響應數據。
2.如何定位前后端bug
理論上: 如果請求參數有問題就是前端bug,如果請求參數沒有問題、返回數據有問題,那么就是后端bug(沒有詳細接口文檔情況下,是無法判斷接口參數是否有問題)。
實際上: 查看響應結果,查看頁面錯誤信息,結合需求文檔、日志信息綜合進行對比。
后端bug:異常類信息。
注
內容來自b站碼尚軟件平臺 、百度等,有興趣可以去b站自行了解。