1. 程式人生 > >android app 弱網測試【轉】

android app 弱網測試【轉】

轉自:https://www.jianshu.com/p/7e048b551b2d

模擬手機/裝置WIFI的弱網測試,步驟如下:

新建wifi熱點,手機等裝置,連線wifi熱點

這裡介紹做法,電腦上通過雙網絡卡的方式自行搭建一個wifi熱點,讓手機直接連線這個熱點。將網路模擬工具在PC上執行,並開啟代理軟體。

1)PC端有無線網絡卡,並裝驅動。以管理員許可權執行cmd命令提示符,執行命令啟用並設定虛擬WiFi網絡卡:netsh wlan set hostednetwork mode=allow ssid=testwifi key=12345678

引數說明:mode:表示是否啟用虛擬WiFi網絡卡,allow-啟用網絡卡 disallow-禁用網絡卡。ssid:無線網名稱,最好用英文(例如:wifitest)。key:無線網密碼,八個以上字元(例如:12345678)。開啟成功後,網路連線中會多出一個網絡卡為“Microsoft Virtual WiFi Miniport Adapter”的無線連線,如這裡的無線網路連線 3。

2)控制面板\網路和 Internet\網路連線:

設定Internet連線共享:在“網路連線”視窗中,右鍵已連線到Internet的網路連線,如圖中的無線網路連線,右鍵選擇【屬性】→【共享】,勾上【允許其他······連線(N)】並選擇剛才設立的虛擬網絡卡,如圖,確定。

3)開啟無線網路,在命令提示符裡輸入:netsh wlan start hostednetwork

netsh wlan stop hostednetwork即可關閉該無線網;顯示無線網路資訊命令:netsh wlan show hostednetwork

4) 主機設定完畢,手機等待測裝置搜尋到無線網路wifitest,輸入密碼12345678,就可以使用了。

弱網的情形有兩種方式,其一使用網路損傷儀進行,其二採用軟體方式。硬體採購費用太貴,所以這裡採用軟體方式,Window下常用的幾款網路狀況模擬工具:一是Network Delay Simulator,簡稱netsim,用於模擬網路丟包、延遲、低頻寬等多種網路異常情況。二是Fiddler,模擬網速功能比較單一(Rules –> Performance –> Simulate Modem speed),選項較少,Fiddler僅是減緩頻寬並未引入包丟失。另一款比較好用的網路模擬工具是Network-Emulator-Toolkit(NEWT)

NEWT是一個簡單實用的網路模擬工具軟體。開始是微軟內部為搭建網路模擬服務於網路的研究工作而開發,之後開發維護並將NEWT的核心程式碼先後成功地轉移到了微軟的產品Xbox XDK,Games for Windows Live,以及Visual Studio 2010中,才廣泛運用於使用者,但找到相關的文件較少。

NEWT通過虛擬鏈路(virtual link)封裝了端到端的網路連線行為,並且通過操縱流經虛擬鏈路的資料包交換模擬真實網路行為。有時候需要僅通過模擬操作影響來自某個客戶端與伺服器的資料互動,但是不影響伺服器同其它客戶端的互動,這個可通過包過濾器(packet filter)和虛擬鏈路來實現。NEWT可以安裝在客戶端,也可以安裝在服務端,只要客戶端和伺服器通過物理鏈路連線,且途經NEWT即可。

- 解壓Network-Emulator-Toolkit壓縮包,32位和64位兩個版本,並開啟Network-Emulator-Toolkit,開啟後,預設就新建了一個名為“VirtualChannel 1”的channel。如果有必要,可以新建多個Channel

- 建立一個過濾器Filter

- 新建連線,選單欄 Configuration -> New Link 或工具欄的快捷按鈕,未配置的情況下,左右兩條線都是灰色的。

- 點選開始按鈕/停止按鈕/儲存檔案[可選],儲存配置檔案為xml,方便後續匯入

* 手機/裝置端操作,檢視效果。例如正常的網路時ping一下其他PC,正常的網路環境下沒有丟包,延遲時間<1ms。配置頻寬很小,丟包,執行配置後的NEWT,ping發現延遲時間很大。也可以在待測手機/裝置上開啟App或者瀏覽器,進行弱網路情況下的測試。如果要驗證弱網路的條件是否生效,也可結合網路速度工具進行測試,如speedTest。

模擬手機弱網路訪問應用,步驟如下:

1)按照上節步驟,新建wifi熱點,手機等裝置,連線wifi熱點

2)新建NEWT例項,進行必要的配置,如丟包,頻寬設定等

3)手機/裝置端操作,檢視效果。例如正常的網路時ping一下其他PC,正常的網路環境下沒有丟包,延遲時間<1ms。配置頻寬很小,丟包,執行配置後的NEWT,ping發現延遲時間很大。也可以在待測手機/裝置上開啟被測的App,進行弱網路情況下的測試。如果要驗證弱網路的條件是否生效,一方面可以從App的響應情況看到差別,一方面可以從PC的Wireshark抓包看具體網路層的情況。



作者:許小小晴
連結:https://www.jianshu.com/p/7e048b551b2d
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。