摘自:http://www.51testing.com/html/61/n-3723661.html
APP網(wǎng)絡(luò)測(cè)試要點(diǎn)

1、各個(gè)網(wǎng)絡(luò)下功能測(cè)試
●不同網(wǎng)絡(luò)下,檢查基本功能點(diǎn)
●運(yùn)營(yíng)商移動(dòng)、聯(lián)通、電信接入點(diǎn)測(cè)試(需要使用實(shí)際SIM卡)
●若有智能DNS功能,還需要關(guān)注運(yùn)營(yíng)商判斷/歸類
●高延時(shí)、高丟包、無網(wǎng)、假熱點(diǎn)也可歸入弱網(wǎng)測(cè)試范疇
2、網(wǎng)絡(luò)切換測(cè)試
部分APP有智能DNS功能,網(wǎng)絡(luò)切換涉及DNS切換。
網(wǎng)絡(luò)切換檢測(cè)機(jī)制:Android可以監(jiān)聽系統(tǒng)廣播
3、弱網(wǎng)測(cè)試
用戶體驗(yàn)和異常處理是各個(gè)網(wǎng)絡(luò)場(chǎng)景都需要關(guān)注的,只是弱網(wǎng)場(chǎng)景下,需要重點(diǎn)關(guān)注。
弱網(wǎng)測(cè)試模擬
什么樣的網(wǎng)絡(luò)屬于弱網(wǎng)
低于2G速率的時(shí)候都屬于弱網(wǎng),3G也可劃分為弱網(wǎng),一般Wi-Fi不劃入弱網(wǎng)測(cè)試范疇。
如何進(jìn)行弱網(wǎng)測(cè)試
1、SIM卡的網(wǎng)絡(luò)切換
手機(jī)-設(shè)置-移動(dòng)網(wǎng)絡(luò)設(shè)置-網(wǎng)絡(luò)類型選擇
3G、4G卡都可以設(shè)置關(guān)閉3G/4G,只走2G網(wǎng)絡(luò)。
2、具體弱網(wǎng)場(chǎng)景測(cè)試,常見場(chǎng)景包括:地鐵/巴士、電梯、樓梯間、停車場(chǎng)
3、使用虛擬機(jī)模擬網(wǎng)絡(luò)速度,如用樹莓派搭建的弱網(wǎng)測(cè)試儀
4、使用軟件進(jìn)行網(wǎng)絡(luò)代理,模擬不同的網(wǎng)絡(luò)帶寬、延時(shí)率、丟包率
弱網(wǎng)模擬常用工具
方法一:charles弱網(wǎng)模擬


配置參數(shù)解析:
bandwidth —— 帶寬,即上行、下行數(shù)據(jù)傳輸速度
utilisation —— 帶寬可用率,大部分modern是100%
round-trip latency —— 第一個(gè)請(qǐng)求的時(shí)延,單位是ms。
MTU —— 最大傳輸單元,即TCP包的最大size,可以更真實(shí)模擬TCP層,每次傳輸?shù)姆职闆r。
Releability —— 指連接的可靠性。這里指的是10kb的可靠率。用于模擬網(wǎng)絡(luò)不穩(wěn)定。
Stability —— 連接穩(wěn)定性,也會(huì)影響帶寬可用性。用于模擬移動(dòng)網(wǎng)絡(luò),移動(dòng)網(wǎng)絡(luò)連接一般不可靠。
具體網(wǎng)絡(luò)設(shè)置參考:



Fiddler也可以進(jìn)行弱網(wǎng)環(huán)境模擬,具體參考:Fiddler弱網(wǎng)模擬
方法二:chrome的webview調(diào)試工具弱網(wǎng)模擬
使用chrome的webview調(diào)試工具,缺點(diǎn)是只適用于web頁面的弱網(wǎng)模擬。
具體步驟:
?。?)應(yīng)用打開webview調(diào)試功能,具體如下:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
? ?WebView.setWebContentsDebuggingEnabled(true);
}
(2)手機(jī)鏈接電腦,運(yùn)行APP,進(jìn)入具體H5頁面;
?。?)chrome的DevTools中打開Webview:進(jìn)入chrome://inspect/#devices,會(huì)顯示已經(jīng)連接設(shè)備,選中待調(diào)試webview的inspect
network頁面,No throttling下拉框,可以進(jìn)行網(wǎng)絡(luò)模擬。

方法三:iOS手機(jī)自帶Network Link Conditioner 弱網(wǎng)模擬
iPhone手機(jī)打開開發(fā)者選項(xiàng),具體參考:參考
設(shè)置-開發(fā)者選項(xiàng) > Network Link Conditioner 入口。
系統(tǒng)已經(jīng)內(nèi)置常見網(wǎng)絡(luò)配置,也可以增加自定義配置。
具體配置參數(shù):
in Bandwidth 下行帶寬,即下行網(wǎng)絡(luò)速度
In packet loss 下行丟包率
in delay 下行延遲,單位ms
out bandwidth 上行帶寬
out packet loss 上行丟包率
out delay 上行延遲
DNS delay DNS解析延遲
protocol 支持Any,IPV4、IPV6
interface 支持Any,WI-Fi,cellular(蜂窩網(wǎng))
具體步驟參考:




網(wǎng)絡(luò)測(cè)試經(jīng)典問題分享
場(chǎng)景一:弱網(wǎng)下,頁面加載過程,程序閃退。
原因:webview超時(shí)處理未在UI線程。toast、關(guān)閉頁面等操作需要在UI線程。
場(chǎng)景二:302跳轉(zhuǎn)頁面,達(dá)到內(nèi)置超時(shí)閥值后,webview自動(dòng)關(guān)閉。
原因:業(yè)務(wù)有頁面加載超時(shí)自動(dòng)關(guān)閉的邏輯,超時(shí)機(jī)制未考慮302場(chǎng)景。