測試必備工具之最強抓包神器 Charles,你會了么?


前言

 
作為軟件測試工程師,大家在工作中肯定經常會用到各種抓包工具來輔助測試,比如瀏覽器自帶的抓包工具-F12,方便又快捷;比如時下特別流行的Fiddler工具,使用各種web和APP測試的各種場景的抓包分析;比如Wireshark,專注於調試網絡問以及和分析網絡協議包分析...然而,今天我要給大家分享的一款抓包工具叫做Charles,同樣也是一個抓包神器! 
 
Charles是一款的抓包修改工具,其實也是一款代理服務器,通過成為電腦或者瀏覽器的代理,然后截取請求和請求結果達到分析抓包的目的。它是用Java編寫的,能支持Win體驗可以使用免費試用版本,試用時間為30天。試用期過后每次只能試用30分鍾,並且每次啟動也會有延時。 
 
Charles主要功能非常豐富,包括: 
  1. 截取 HTTP 和 HTTPS 網絡協議
  2. 支持重發網絡請求,方便后端調試
  3. 支持修改網絡請求參數
  4. 支持網絡請求的截獲並動態修改
  5. 支持模擬網絡

下載安裝包

去 Charles 的官網,下載這個工具的安裝包:https://www.charlesproxy.com/download/
image.png

安裝

image.png

雙擊這個安裝包,並且一路 next 即可完成安裝。

運行軟件

安裝完成之后,找到這個文件的桌面快捷方式 ,image.png,雙擊打開即可運行軟件。

image.png

打開即可看到如上圖的界面。

設置代理

如開頭講到的,Charles 是通過將自己設置為電腦或者瀏覽器的代理從而達到抓包的目的的。所以設置代理是在菜單欄【Proxy】—【windows Proxy】,勾選即可。

image.png

設置為代理之后,就可以開始抓取數據包了。

視圖

從工具打開后的主頁面可以發現,Charles 主要提供兩種查看封包的視圖,分別名為 “Structure” 和 “Sequence”。

  1. Structure 視圖將網絡請求按訪問的域名分類。

這種視圖我個人認為非常方便閱讀和查找數據報文,因為同一個域名的所有新增請求都會添加到這個域名類中,而不會因為數據包過多而導致不方便查找的問題。

image.png

過濾數據包

Charles 也考慮到了數據包過多不方便查找的問題,所以提供了網絡請求過濾功能。通過過濾監控指定服務器的請求。

要設置 Charles 數據包的過濾,有三種方法:

方法一:在主界面的中部的 Filter 欄中填入需要過濾出來的關鍵字。例如我們的服務器的地址是:http://www.lemfix.com/ , 那么只需要在 Filter 欄中填入"lemfix'即可。回車后即可過濾出對應的數據包。

image.png

方法二:抓完包之后,在想過濾的網絡請求上右擊,選擇 “Focus”,之后在 Filter 一欄勾選上“Focus” 一項,如下圖所示:

image.png

這樣可以快速地過濾出去一些不關心網絡請求(收起到 other hosts 里),只顯示我選中的數據包。

方法三:在 Charles 的菜單欄選擇 “Proxy”–>“Recording Settings”,然后選擇 Include 欄,點擊“add”新增加一個項目,然后填入需要監控的協議(如 http),主機地址(想過濾的域名或者 IP),端口號。配好之后,點擊 OK。這樣就可以只截取目標網站的封包了。如下圖所示:

image.png

通常情況下,第一、二種方法可以用於臨時性包過濾,如果有些服務器是你經常性訪問的,可以用方法三設置為常規過濾規則。

經過以上的步驟,就可以使用 Charles 工具開始愉快的抓包了!



作者:tricy
鏈接:http://testingpai.com/article/1595507308724
來源:測試派
協議:CC BY-SA 4.0 https://creativecommons.org/licenses/by-sa/4.0/

  • Sequence 視圖將網絡請求按訪問的時間排序

    這個視圖跟其他的抓包工具就基本類似了。這種視圖的一個弊端就是數據包過多會不太方便查找。image.png


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM