APP測試---fiddler的應用


fiddler工具在移動app測試中的使

fiddler工具是基於web代理技術的抓包工具

fiddler抓包原理

  • app ------> fiddler ------> 服務器 ------> fiddler ------> app
  • fiddler工具支持的是http協議、https協議、websocket協議的數據的抓取,不是所有的app和服務器之間的交互數據都能抓取到,比如手游
  • fiddler使用.net開發,需要.net framework的支持,尤其是win7

fiddler環境配置

選項設置

image-20210612204727033

  • Fiddler listens on port 監聽端口(默認8888)
  • Allow remote computers to connect 允許遠端電腦連接(包括手機/模擬器)
  • capture FTP requests 抓取FTP請求
  • Reuse client connections 重用客戶端連接
  • Reuse server connections 重用服務端連接
  • Act as system proxy on startup 啟動時作為系統代理
  • Monitor all connections 監控所有的連接

HTTPS設置

image-20210612210001059

  • Capture HTTPS CONNECTS 抓取HTTPS連接
  • Decrypt HTTPS traffic 解密HTTPS通信
  • ignore server certificate errors(unsafe) 忽略服務證書錯誤(不安全)
  • Check for certificate revocation 檢查證書取消
  • Trust Root Certificate 信任根證書
  • Export Root Certificate to Desktop 導出根證書到桌面
  • Reset ALL Certificates 重置所有證書

修改fiddler的設置后,重啟一下fiddler軟件保證所有的修改生效

對手機/模擬器進行證書的安裝和代理設置

  • 使用手機瀏覽器訪問Fiddler所在的電腦的【ip地址:fillder端口號】

    image-20210613103125357

    下載證書,若手機沒有密碼,會提示你設置密碼

  • 證書安裝后,需要在wifi上設置,用fiddler進行網絡代理,必須要設置

    image-20210613103642478

重點補充:

① 抓真機的手機包,你的Fiddler所在的電腦,必須切換成wifi網 絡,並且手機和電腦使用同一個wifi網絡

② 因為手機要被Fiddler抓包,需要把代理服務器調成Fiddler,一旦離開公司,你的wifi就斷掉了,但是你的網絡代理仍然是Fiddler,所在出現了,你發現你手機不能 上網的情況,你需要把網絡代替取消,讓你的手機恢復到4G網絡

關於虛擬機的注意事項

① 物理機上Fiddler <======> 物理機上手機模擬器

② 虛擬機上Fiddler <======> 虛擬機上手機模擬器

③ 物理機上Fiddler <======> 虛擬機上手機模擬器

想要連通數據,首先是虛擬機和物理機是網絡相互訪問的,如果兩個不互通,需要設置虛擬機的網絡適配器,將NAT模式換成橋接模式,“復制物理...”可以勾選上

fiddler測試App時需要使用到的重點功能

Hosts設置和Inspectors數據分析器

hosts

hosts設置功能可以將app的host(網址或域名)隨意綁定到指定的服務器上(如:開發環境、測試環境、預生產環境等)

img

image-20210613104444293

需要綁定過去地址寫在前面,當中空一格,被轉移的地址寫在后面,最后不可以有空格。

​ 使用完畢后務必關閉(反選)HOSTS,不然會影響抓其他app數據包

​ 使用HOSTS功能的同時,必須保證fiddler是開啟的,並且網絡代理設置成fiddler

inspector

​ 進入Inspector模塊分上下兩部分

​ 上半部分對應的是app發往服務器的“請求數據”

​ 下半部分對應的是服務器回給app的“響應數據”,響應數據主要看json格式

Filters功能

​ 數據包列表的數據太多,用filters過濾器功能

image-20210613105013219

AutoResponder接口數據模擬器(擋板測試)

​ 模擬各種測試數據,例如:異常數據、虛擬數據等,用於不同的測試場景

思考

​ 購物車數量的單點功能我們如何測試?

思路

​ 如果想測試購物車有1000件商品,就會發現比較麻煩,需要在后台去構造1000件商品。為了更方便地開展測試,可以使用AutoResponder模塊的功能,模擬出假的服務器響應數據(最佳解決方案,現在外面很多叫它“擋板測試”)

​ 例如:

9

99

999

-1

漢字

特殊字符

操作

​ (提前准備)加入一個商品到購物車,購物車數量變成1

​ (抓包)點擊購物車按鈕,將抓到購物車的數據,找到購物車數量的數據

​ 右鍵數據包->Save->Response->Entire Response,保存整個服務器響應數據文件到本地

​ 使用AutoResponder

img

​ (點擊【Add Rule】就可以添加規則了)

注意事項

​ 反復修改本地的服務器響應數據文件,反復在APP界面上去觸發購物車接口,我們可以發現每次我們都使用的是“模擬的數據”

​ 當不使用的時候,務必記得反選Enable rules,關閉AutoResponder功能,即:

​ 這里一定要注意,上圖中的Unmatched requests passthrough一定要勾上,因為這個勾上的含義代表着,規則只針對當前接口有效


免責聲明!

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



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