資源描述:
《charles移動(dòng)端抓包工具安裝使用和經(jīng)驗(yàn)小結(jié)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、Charles:移動(dòng)端抓包工具安裝使用和經(jīng)驗(yàn)小結(jié)暫無評論從事移動(dòng)互聯(lián)網(wǎng)一年多的時(shí)間,等到去年才慢慢和開發(fā)打交道,由于創(chuàng)業(yè)公司人手不足,沒有專門測試人員,很多時(shí)候產(chǎn)品人員QA質(zhì)量驗(yàn)收的時(shí)候,就會面臨黑盒測試測試不全面,通訊請求盲人摸象的局面.通過一段時(shí)間的摸索,找到了Charles這款適合移動(dòng)端抓包工具,的確比之前方便了很多,主要體現(xiàn)在:1.可以查看具體的請求鏈接,查看有沒有多余對服務(wù)器的請求,能否更好的優(yōu)化和服務(wù)器之間的通訊.2.可以直接查看競品或者其他優(yōu)秀app的通訊使用的數(shù)據(jù)結(jié)構(gòu),精簡自己的數(shù)據(jù)結(jié)構(gòu),方便節(jié)省流量和提升效率3.可以直接查看統(tǒng)計(jì)請求,方便調(diào)試有沒有入庫,或當(dāng)發(fā)生加載異常等
2、情況時(shí),可以第一時(shí)間發(fā)現(xiàn)問題而無需等開發(fā)人員進(jìn)行真機(jī)調(diào)試才能判斷是服務(wù)器還是客戶端的問題.鑒于以上優(yōu)點(diǎn),如果路過圍觀的小伙伴們對這些優(yōu)點(diǎn)感興趣又和我有一樣的苦惱,不妨繼續(xù)往下看,以下是安裝過程和在使用中的一些經(jīng)驗(yàn).1.下載并安裝Charles.mac版和window版都有,下載可以去Charles官網(wǎng)(http://www.charlesproxy.com/download/),下載下來的是試用版(截止2013.08.25最新版本是3.7),雖然只是試用版有一定限制,比如開機(jī)delay10s,每隔5分鐘提示你轉(zhuǎn)為試用版,30分鐘后強(qiáng)行關(guān)閉,但鑒于他強(qiáng)大的功能,30分鐘其實(shí)已經(jīng)足夠.目前3.
3、6在百度上有破解版,自行百度之.2.配置Charles.1)打開charles后,在proxy標(biāo)簽項(xiàng)關(guān)閉自身代理,此選項(xiàng)開啟會抓取電腦的網(wǎng)絡(luò)請求,影響我們測試。實(shí)際上我們在測試手機(jī)app并不需要,故關(guān)閉。如下:2)設(shè)置pc端代理。如下圖選擇proxysetting.如下圖所示:Proxies一項(xiàng)設(shè)置如下,默認(rèn)端口為8888,用于手機(jī)連上代理的端口.接下來SSL一項(xiàng)如下設(shè)置:即允許ssl代理,下方的*.*是要通過add按鈕添加進(jìn)去的。在按”add”按鈕之后兩個(gè)輸入框均輸入”*”,”*”即可.3)設(shè)置允許代理的ip地址范圍。打開proxy->accesscontrolsetting,如下:將你
4、允許的ip地址段填寫進(jìn)去。如下圖:確定自己要填的ip地址段,window使用cmd命令行輸入ipconfig回車即可看到自己目前所在的ip,如192.168.0.108(首先這個(gè)ip地址最好是無線路由分配的),即可以設(shè)置為192.168.0.0/24.如此設(shè)置之后192.168.0.0~192.168.0.255的地址均可以訪問你的電腦,通過你的電腦進(jìn)行代理上網(wǎng)。如下圖:3.設(shè)置手機(jī)端的相關(guān)參數(shù).不同手機(jī)設(shè)置方法可能有所不同,以安卓手機(jī)(谷歌原生4.0以上系統(tǒng))為例,進(jìn)入系統(tǒng)設(shè)置-》網(wǎng)絡(luò),長按目前和pc端連接一樣的路由名稱,彈出修改網(wǎng)絡(luò),選擇修改網(wǎng)絡(luò),如下:按照以上截圖選擇顯示高級選項(xiàng)。配
5、置剛剛pc的ip地址,和端口即可。然后關(guān)閉pc端的防火墻,測試是否連接電腦成功。(此步驟很重要)測試方法:點(diǎn)擊隨便一個(gè)應(yīng)用(筆者啟動(dòng)的是今日頭條),看charles的Structure欄中有沒有出現(xiàn)一些文件夾,類似下圖,如果有則成功;**********charles常用的一些功能介紹:1)忽略請求功能。由于某些時(shí)候我們只需要關(guān)注某一個(gè)應(yīng)用的請求,所以過濾掉其他不需要顯示的請求可以讓我們集中精力在該應(yīng)用.點(diǎn)擊某行右鍵選擇ignore(如下圖),可以將此鏈接忽視,將干擾的網(wǎng)絡(luò)請求屏蔽,防止影響我們測試:2)復(fù)制原鏈接。此功能可以復(fù)制請求的原鏈接,只要你使用Chrome瀏覽器安裝了sonvie
6、wer的插件,黏貼上去回車即可看到返回的數(shù)據(jù)結(jié)構(gòu)。同時(shí)也方便于發(fā)給服務(wù)器的開發(fā)人員調(diào)試用。如下:3)清空捕獲的網(wǎng)絡(luò)請求,正常狀態(tài)下在structure欄里按ctrl+a,然后按delete鍵,就可以清除所有捕獲的網(wǎng)絡(luò)請求,4)查看請求的相關(guān)數(shù)據(jù)。如下圖,overview可以方便的看出請求的時(shí)間長短,請求的大小和返回?cái)?shù)據(jù)的大小,即數(shù)據(jù)請求的大概情況;Request用于查看請求的參數(shù)是否攜帶正確。如下圖:而response可以查看返回的數(shù)據(jù)結(jié)構(gòu)是不是我們想要的,如下圖,可以明確的看到拿到的封面數(shù)據(jù)是否正確。當(dāng)請求的是一張圖片時(shí),還可以直接用response-》image查看圖片的尺寸和圖片,方
7、便我們確認(rèn)是否下載正確,如下圖:注:使用代理無法訪問一些安全驗(yàn)證網(wǎng)站如新浪微博綁定頁面,目前android版使用代理直接訪問在某些機(jī)器上會直接閃退關(guān)掉該頁面,故需要綁定時(shí)請關(guān)閉代理之后再連接上代理驗(yàn)證。*************Charles目前尚有問題的地方:1.同樣設(shè)置在一些機(jī)器可以捕獲到GoogleAnalytics的請求,但有些不行,暫時(shí)還找不到原因.2.暫時(shí)無法捕捉到微信等請求,可能因?yàn)槭褂玫膮f(xié)議不同所以無法捕