一、簡介
一般我們測試App都需要考慮到不同網絡下,保證不會crash,同時盡可能保證在弱網情況下也能達到相應功能正常使用且體驗好。故要用到工具來控制網絡,調試不同網速,達到測試要求。
我們可以利用Charles工具來模擬弱網測試
什么樣的網絡屬於弱網
低於2G速率的時候都屬於弱網,3G也可划分為弱網,一般Wi-Fi不划入弱網測試范疇。
如何進行弱網測試
1、SIM卡的網絡切換
手機-設置-移動網絡設置-網絡類型選擇
3G、4G卡都可以設置關閉3G/4G,只走2G網絡。
2、具體弱網場景測試,常見場景包括:地鐵/巴士、電梯、樓梯間、停車場、山里
3、使用虛擬機模擬網絡速度
4、使用軟件Charles,fiddler進行網絡代理,模擬不同的網絡帶寬、延時率、丟包率
二、Charles模擬弱網使用
- 打開Charles,點擊proxy,選擇Throttling Settings,進入網絡設置頁面【圖1】
- 勾選Enable Throttling,此時相當於開啟了限制網速的功能【圖2】
- 在Throttle preset選擇不同網速,點擊OK【圖3】
2.1具體操作說明
第一種方法:首先從Throttle preset選項中選擇自己要模擬的網絡
第二種方法:若在Throttle preset選項中沒有找到自己想要的網絡,可以自定義
具體網絡設置值參考:
2.2網絡模擬設置頁面字段說明
【Throttling Settings網絡模擬設置】頁面字段說明:
Enable Throttling 可以指定域名攔截,也可以所有請求攔截
Bandwidth(帶寬)—— 帶寬,即上行、下行數據傳輸速度
Utilistation(利用百分比) —— 帶寬可用率,大部分modern是100%
Round-trip latecy(往返延遲)—— 第一個請求的時延,單位是ms。
MTU(最大傳輸單元)—— 最大傳輸單元,即TCP包的最大size,可以更真實模擬TCP層,每次傳輸的分包情況。
Reliability(可靠率)—— 指連接的可靠性。這里指的是10kb的可靠率。用於模擬網絡不穩定。
Stability(穩定率)—— 連接穩定性,也會影響帶寬可用性。用於模擬移動網絡,移動網絡連接一般不可靠。
Unstable quality range(不穩定數量范圍)