91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

基于fiddler插件開發的移動測試網絡監控與分析

發布時間:2020-06-16 02:13:42 來源:網絡 閱讀:729 作者:百度MTC 欄目:移動開發

一、背景和目的:

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

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

 

二、工具實現原理

         首先了解一下fiddler的實現http代理請求的原理,方便我們深入的研究。Fiddler實現的原理是截獲了windowswinnet接口,在轉發服務器請求和響應的階段,可以hook住傳遞的參數,達到監控甚至修改網絡數據包的能力。如下圖所示,fiddler提供了4個接口,AutotamperRequestBeforeAutotamperRequestAfterAutotamperResponseBeforeAutotamperResponseAfter

基于fiddler插件開發的移動測試網絡監控與分析

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

1  發現網絡請求包的異常問題,例如,接口數據包大小過大,幫助分析接口是否存在冗余數據,從而節省用戶使用app的網絡流量負擔。

2  發現網絡請求時間超時異常問題,例如,發現接口訪問時間過大,幫助發現后端潛在的邏輯錯誤。

3  發現網絡請求訪問頻次異常問題,例如,app頁面緩存機制是否正常;接口是否因為發送時機不對導致頻繁發送。

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

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

程序示例如下:


基于fiddler插件開發的移動測試網絡監控與分析


三、工具的主要功能:

1.       包大小分析:

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


基于fiddler插件開發的移動測試網絡監控與分析


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

基于fiddler插件開發的移動測試網絡監控與分析

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

2.       請求時長分析:


基于fiddler插件開發的移動測試網絡監控與分析


過濾之后的URL按照請求耗時的降序排列,請求耗時為ClientBeginRequestClientDoneResponse之間的時間差值。根據網絡請求耗時,判斷異常請求。

3.       請求次數:


基于fiddler插件開發的移動測試網絡監控與分析


請求次數和測試執行過程對比,分析是否存在重復多次發送某請求。

4.       接口覆蓋情況監控:


基于fiddler插件開發的移動測試網絡監控與分析


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

基于fiddler插件開發的移動測試網絡監控與分析

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

5.       網速控制

基于fiddler插件開發的移動測試網絡監控與分析

通過拖動TrackBar上的滑塊設置網速的值;可以用來模擬不同的網絡環境:

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

無限制:基于fiddler插件開發的移動測試網絡監控與分析

斷網:基于fiddler插件開發的移動測試網絡監控與分析

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

 

四、還可以做的更多

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

  

參考文獻:

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

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


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

灯塔市| 云林县| 沅江市| 铜陵市| 高淳县| 延津县| 高州市| 昌宁县| 遂川县| 临江市| 玉龙| 五大连池市| 桓仁| 辽宁省| 三台县| 沁源县| 新密市| 兴安县| 禄丰县| 湟中县| 台北县| 蓬莱市| 淅川县| 壤塘县| 吉隆县| 镇雄县| 高州市| 奉化市| 青冈县| 家居| 读书| 儋州市| 铅山县| 城市| 增城市| 芦溪县| 寻甸| 潢川县| 荔波县| 天长市| 安仁县|