真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

基于fiddler插件開發(fā)的移動測試網(wǎng)絡監(jiān)控與分析

一、背景和目的:

我們提供的服務有:網(wǎng)站制作、網(wǎng)站設計、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、習水ssl等。為數(shù)千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的習水網(wǎng)站制作公司

由于目前App前端業(yè)務測試很少關注后端網(wǎng)絡接口的異常情況,客戶端QA在項目測試時往往局限于關注測試功能,導致測試粒度較粗。即使按照CheckList過功能點,客戶端QA對后端接口的覆蓋情況也很難做到明確把握。

Fiddler是我們在客戶端測試時使用比較普遍的工具,常用于HTTP抓包、構造請求等等。原生的fiddler插件,缺乏對包大小,網(wǎng)絡請求時長、接口訪問頻次、接口覆蓋度等維度進行網(wǎng)絡請求的分析,同時提供網(wǎng)速控制的功能,下文介紹開發(fā)定制fiddler插件輔助app業(yè)務測試。

 

二、工具實現(xiàn)原理

        首先了解一下fiddler的實現(xiàn)http代理請求的原理,方便我們深入的研究。Fiddler實現(xiàn)的原理是截獲了windows的winnet接口,在轉發(fā)服務器請求和響應的階段,可以hook住傳遞的參數(shù),達到監(jiān)控甚至修改網(wǎng)絡數(shù)據(jù)包的能力。如下圖所示,fiddler提供了4個接口,AutotamperRequestBefore,AutotamperRequestAfter,AutotamperResponseBefore,AutotamperResponseAfter。

基于fiddler插件開發(fā)的移動測試網(wǎng)絡監(jiān)控與分析

我們在自己插件中實現(xiàn)這四個方法即可滿足我們自己的測試需求。在我遇到的項目中,我們實現(xiàn)了以下功能。

1、 發(fā)現(xiàn)網(wǎng)絡請求包的異常問題,例如,接口數(shù)據(jù)包大小過大,幫助分析接口是否存在冗余數(shù)據(jù),從而節(jié)省用戶使用app的網(wǎng)絡流量負擔。

2、 發(fā)現(xiàn)網(wǎng)絡請求時間超時異常問題,例如,發(fā)現(xiàn)接口訪問時間過大,幫助發(fā)現(xiàn)后端潛在的邏輯錯誤。

3、 發(fā)現(xiàn)網(wǎng)絡請求訪問頻次異常問題,例如,app頁面緩存機制是否正常;接口是否因為發(fā)送時機不對導致頻繁發(fā)送。

4、業(yè)務測試可以分析接口覆蓋度,指導后續(xù)測試重點,使測試點更完整,避免漏測。

5、修改請求響應延遲,模擬各種網(wǎng)速,如2,3g網(wǎng)絡,斷網(wǎng)等情況,方便測試各種網(wǎng)絡異常case。

程序示例如下:

基于fiddler插件開發(fā)的移動測試網(wǎng)絡監(jiān)控與分析

三、工具的主要功能:

1.      包大小分析:

Packet Size tab顯示根據(jù)host.ini中配置的host過濾結果,按照請求的包的大小進行降序排列;用于分析異常的網(wǎng)絡請求數(shù)據(jù)包。

基于fiddler插件開發(fā)的移動測試網(wǎng)絡監(jiān)控與分析

Reset按鈕前面的兩個數(shù)字分別對應測試過程中,請求的總流量和總耗時;

基于fiddler插件開發(fā)的移動測試網(wǎng)絡監(jiān)控與分析

兩個窗口分別實時顯示請求的包大小和請求的次數(shù),并給出峰值;

2.      請求時長分析:

基于fiddler插件開發(fā)的移動測試網(wǎng)絡監(jiān)控與分析

過濾之后的URL按照請求耗時的降序排列,請求耗時為ClientBeginRequest與ClientDoneResponse之間的時間差值。根據(jù)網(wǎng)絡請求耗時,判斷異常請求。

3.      請求次數(shù):

基于fiddler插件開發(fā)的移動測試網(wǎng)絡監(jiān)控與分析

請求次數(shù)和測試執(zhí)行過程對比,分析是否存在重復多次發(fā)送某請求。

4.      接口覆蓋情況監(jiān)控:

基于fiddler插件開發(fā)的移動測試網(wǎng)絡監(jiān)控與分析

Coverage tab下需要監(jiān)控的接口通過coverurl.ini配置,在測試過程中,覆蓋到的接口,對應的小方塊顯示填充,否則不填充。對監(jiān)控接口的覆蓋率進行實時統(tǒng)計,結果如餅圖所示:

基于fiddler插件開發(fā)的移動測試網(wǎng)絡監(jiān)控與分析

通過接口覆蓋情況監(jiān)控,可以知道客戶端QA在測試過程中對后端接口,尤其是新增接口覆蓋情況,對測試覆蓋的全面情況以及CheckList的設計提供知道;客戶端測試應重視對新增接口的覆蓋。

5.      網(wǎng)速控制

基于fiddler插件開發(fā)的移動測試網(wǎng)絡監(jiān)控與分析

通過拖動TrackBar上的滑塊設置網(wǎng)速的值;可以用來模擬不同的網(wǎng)絡環(huán)境:

例如,無限制下的WiFi環(huán)境;3G網(wǎng)絡(40-500kb/s);2G網(wǎng)絡(8kb/s);斷網(wǎng)。

無限制:基于fiddler插件開發(fā)的移動測試網(wǎng)絡監(jiān)控與分析

斷網(wǎng):基于fiddler插件開發(fā)的移動測試網(wǎng)絡監(jiān)控與分析

利用網(wǎng)絡模擬,結合以上1-4點功能,方便測試各種網(wǎng)絡異常case。

 

四、還可以做的更多

上面已經(jīng)實現(xiàn)的功能主要集中在接口數(shù)據(jù)的監(jiān)控上,其實,我們不是不可以更進一步,實現(xiàn)接口數(shù)據(jù)的修改,這也就意味著我們實現(xiàn)了一個通用的移動app測試mock平臺了!

  

參考文獻:

1.Fiddler開發(fā)官方doc文檔:http://docs.telerik.com/fiddler/Extend-Fiddler/ExtendWithDotNet

更多干貨分享請關注”百度MTC學院“http://mtc.baidu.com/academy/article  


網(wǎng)站標題:基于fiddler插件開發(fā)的移動測試網(wǎng)絡監(jiān)控與分析
網(wǎng)頁URL:http://weahome.cn/article/jdgehd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部