[TOC]
### Fiddler 抓包原理介紹
- Fiddler是強大的抓包工具,抓包原理是在客戶端和服務器之間建立一個`代理服務器`,監聽本機發出的請求和服務器返回的響應結果。
- Fiddler代理服務器的地址是:127.0.0.1,端口默認為8888,我們也可以通過設置進行修改端口。
- Fiddler可以抓取支持http代理的任意程序的數據包,如果要抓取https會話,要先安裝證書。

:-: 瀏覽器 < -> Fiddler < -> 服務器
- 基于Fiddler代理服務器的工作原理,在Fiddler中可以`捕獲`、`攔截`、`篡改`客戶端發送的請求數據。同理,服務器返回的響應數據,在Fiddler也可以將數據`捕獲`、`攔截`或`篡改`,再返回給客戶端。
### 抓包測試的意義
1. 定位BUG屬于前端還是后端
舉例:假如我們在測試登錄功能時,前端提示“請輸入正確的用戶名和密碼”,僅僅通過界面提示我們只能描述bug表象,但不能分析出問題原因。通過我們抓包,檢查請求信息和響應信息,假如發現請求參數中參數名錯誤或參數值不正確,這個時候我們將bug指向前端開發人員,假如請求信息完全符合接口要求,響應信息中響應內容不正確,這個時候我們將bug指向后端開發人員。
<br>
2. 通過抓包,幫助我們了解某個業務中客戶端和服務端是通過哪些接口進行交互,更好了解代碼邏輯。
### Fiddler 安裝
Fiddler官網:[https://www.telerik.com](https://www.telerik.com)
從官網中下載安裝Fiddler即可,安裝后在安裝目錄下,雙擊‘Fiddler.exe’即可啟動,如下:

### Fiddler 抓包配置
Fiddler安裝后,設置的端口默認為8888,當Fiddler啟動后,默認將IE的代理設為了127.0.0.1:8888,而其他如**火狐瀏覽器**需要手動設置代理后才可以抓包,一般建議使用`Chrome瀏覽器`進行測試,Chrome會使用IE的代理,無需設置。
#### WEB瀏覽器配置:
要使用Fiddler進行抓包,首先需要確保Capture Traffic是開啟的(安裝后是默認開啟的),勾選File->Capture Traffic,也可以直接點擊Fiddler界面左下角的圖標開啟和關閉抓包。
所以基本上不需要做什么配置,安裝后啟動Fiddler,使用`Chrome瀏覽器`訪問待測網站,就可以進行HTTP抓包了
#### HTTPS配置
對HTTPS協議進行抓包,需要額外配置Fiddler,如下:
1. 打開Fiddler-【Tools】-【Fiddler Option】,切換到HTTPS選項卡,勾選【Capture HTTPS CONNECTs】和【Decrypt HTTPS traffic】,
2. 點擊【Actions】-【Trust Root Certificate】,然后按照提示一路yes,直到彈框提示“Trust Cert success”點擊確定后,
3. **重啟Fiddler**就可以抓取HTTPS協議的數據包了。


#### Android手機抓包配置
- [x] 確保手機和Fiddler所在主機在同一個局域網中
- [x] 獲取Fiddler所在主機的ip地址,通過cmd命令進入命令編輯器,輸入ipconfig -all,找到IPv4地址,記下該地址

這里,小編的Fiddler所在主機ip為:192.168.0.106,后面會在手機中用到這個ip
- [x] 對手機所連接的無線網絡進行設置,點擊WLAN,長按與Fiddler所在主機在同一個局域網的wifi,長按點擊【修改網絡】,選中【顯示高級選項】,代理設置為手動,輸入代理服務器的主機名和端口后保存。代理服務器的主機名即Fiddler所在主機中的IPv4地址,端口為Fiddler上配置的端口(默認為8888),可以到Fiddler菜單欄中【Tool】-【Fiddler Option】的【Connections】中查看

- [x] 在Fiddler中,確保在Fiddler-【Tools】-【Fiddler Option]-[Connection]中【Allow remote computers to connect】已經勾選上,若沒有勾選,則需要勾選后保存并重啟Fiddler。

- [x] 在手機瀏覽器上輸入:http://IPv4地址:端口(例如:http://192.168.0.106:8888),點擊【FiddlerRoot certificate】下載安裝Fiddler證書

- [x] 此時我們打開手機上的瀏覽器或APP,可以在Fiddler上看到手機上的數據包了。
#### iOS手機抓包配置
基本與andriod的配置方法一致,除了安裝證書方式與andriod略有不同,另外ios在下載證書后,需要**手動信任證書**。設置方法:打開【設置】-【通用】-【關于本機】-【證書信任證書】,找到對應的證書,啟用即可。
<hr style="margin-top:100px">
:-: 
***微信掃一掃,關注“python測試開發圈”,獲取更多測試開發分享!***
- 前言
- Fiddler01-抓包原理介紹與配置
- Fiddler02-菜單功能介紹
- Fiddler03-輕松玩轉Fiddler
- Fiddler04-進階使用FiddlerScript
- Fiddler05-使用FiddlerScript對微信文章互動量進行監控
- Postman01-介紹與安裝
- Postman02-HTTP請求與響應
- Postman03-Collection管理與運行
- Postman04 -變量詳解
- Postman05-初級腳本使用
- Postman06-實例小結篇
- JMeter01-JMeter就是這么簡單
- JMeter02-一個完整實戰包你學會使用JMeter
- JMeter03-在JMeter中使用BeanShell編程
- JMeter04-圖形化和非圖形化運行JMeter
- JMeter05-生成美觀的HTML測試報告
- JMeter06-JMeter+Jenkins實戰
- JMeter07-解析session與cookie