APP弱網測試

APP弱網測試網絡

 

     App弱網測試方法,經常使用工具備使用fiddler進行網絡模擬,也可使用Network Emulator Toolkit控制模擬網絡,相對來講Network Emulator Toolkit功能比較強大一些。
測試原理:利用軟件對wifi進行網絡控制,手機鏈接到該wifi,就能夠測試app弱網絡下的功能表現。
1、測試關注點:
一、卡死,崩潰,無響應,閃退。
二、業務交互數據傳輸正確性。
2、測試工具:
1.Network Emulator Toolkit
2.WiFi共享工具
3、測試步驟:app

1.設置Network Emulator Toolkit模擬測試網絡;
2.設置wifi共享網絡;dom

3.手機鏈接該wifi,打開App進行測試。工具

4、測試方案:測試

寬帶限制:編碼

上行網絡寬帶:5KB/S 8KB/S 15KB/S 50KB/S 100KB/Sspa

下行網絡寬帶:10KB/S 15KB/S 50KB/S 100KB/S 150KB/Scode

丟包率:5% 10% 20% 50% 80%orm

5、操做流程:排序

一、打開Network Emulator Toolkit,新建Channel(通道)

菜單欄 Configuration -> New Filter 或工具欄的快捷按鈕。

 

二、新建Filter

菜單欄 Configuration -> New Filter 或工具欄的快捷按鈕。

 

可選擇全部網絡(ALL NetWork),選好過濾條件後,點擊添加(ADD)按鈕,添加過濾條件;選中已添加的記錄,點擊刪除(Delete)按鈕,可刪除記錄;選中已添加的記錄,從新修改過濾條件,點擊修改按鈕(Modify),可修改記錄。

 三、新建鏈接

菜單欄 Configuration -> New Link 或工具欄的快捷按鈕。

 

選中link,右鍵Set UpStream/Set UpStream設置上行下行網絡模擬狀況。

四、點擊觸發跟蹤按鈕[可選]

點擊「黃色小腳丫」按鈕,確保按鈕爲「點選」狀態。

五、開啓控制

點擊Start開始按鈕,開始模擬網絡。

六、打開WiFi共享工具,手機鏈接WiFi,操做App進行測試。

七、點擊Stop中止網絡模擬。

6、Network Emulator Toolkit 工具Link功能詳解:

一、Loss

說明:

No Loss:默認,不模擬丟包。

Periodic loss: 模擬週期性的丟包。按填寫數量(設爲x個),每x個包,就丟一個包。

Random loss: 模擬隨機丟包,按給定丟包的機率,隨機丟包。(設置1,表明丟包率是100%,設置0.5,表明丟包率是50%)。

Burst loss: 模擬根據給定的可能性進行丟包。

G-E loss: 模擬發生數據包丟失遵循Gilbert-Elliot模型,由兩個狀態組成:好的狀態和壞的狀態。可分別爲這2個狀態指定數據包丟失率,同時可設置網絡傳輸在這兩種狀態的機率

二、Error

說明:

真實世界中,當數據包通過網絡傳輸時,包中的一到多個字節(bit)數據可能發生錯誤。

No Error:不模擬傳輸錯誤。

Random error:根據給定的比例,模擬隨機發生傳輸錯誤。

G-E error:發生傳輸錯誤遵循Gilbert-Elliot Model, 模型,由兩個狀態組成:好的狀態和壞的狀態。可分別爲這2個狀態指定數據包丟失率,同時可設置網絡傳輸在這兩種狀態的機率

錯誤機率單元(Error Rate Unit):

Bit error: 設置出錯機率爲每一個字節出錯的機率。

Packet error: 設置出錯機率爲每一個包出錯的機率。

出錯和丟包的關係

大多數狀況下,包出錯致使包丟失,特殊狀況下,包中的數據被編碼,協議棧可恢復被損壞的包,通過修正後,包爲可接受的包,即包不丟失。此外,除了包出錯會致使包丟失,其它因素也會影響包丟失,如鏈接失敗(Link failure),緩衝區溢出(buffer overflow),隊列管理和傳輸超時(transmission timeout)等。

三、Latency

說明:延遲來自某應用發送的數據包被另外一個應用程序接收到的時間。

Fixed delay: 按給定值,延遲固定時間(單位:毫秒)packets are delayed for a fixed amount of time.

Uniform delay: 按統一分佈,延遲必定量的時間(時間控制在最大最小值之間)

Normal delay: 按正態分佈.延遲必定量的時間(average:平均值,Devation:誤差)

Linear delay: 延遲必定量的時間(在給定時間週期(Period)內,延遲的時間大小從最小值線性增長到最大值,當達到最大值時,又從最小值開始。

Burst delay: 根據給定機率(Probability),延遲必定量的時間(Latency), 丟包數控制最大值和最小值之間 。

四、BW&Queue

若是不指定帶寬(bandwith),則不修改傳輸速率。

若是不設置隊列,則不對接到的包作任何隊列操做

隊列:

Normal queue:全部接收到的包都被放入一個指定隊列大小的先進先出(First In, First Out)隊列。

Randomly Early Detection (RED) queue:全部接收到的包都被放入一個RED隊列。若是隊列大小小於給定的最低閾值(Minimum Threshold),隊列被評估爲不擁擠的,什麼都不作;若是隊列大小大於給定最大閾值(Maximum Threshold),則隊列被評估爲擁擠的,根據丟包規則,丟棄一些包。

丟包規則:

Drop front: 必要時,丟棄位於隊列頭部的包。.

Drop tail: 必要時,丟棄位於隊列尾部的包。

Drop random:必要時,根據統一分佈,隨機丟個包。

Queue Mode:設置隊列大小的單位,以包(Packet Mode)爲單位或者以字節爲單位Byte Mode

五、BgTraffic

一些網絡數據包交換和模擬的兩端沒有任何關係,被指爲背景流(background traffic)。這些背景流會帶來延時效果。

Constant-bit rate (CBR) traffic: 根據給定的固定比例生成背景流(每XX kbps、mbps數據包,xx字節背景流)

Exponential traffic:根據指數On/Off時間分佈生成背景流。我的理解,Burst則爲生成背景流時間,Idle則不生成背景流時間(時間單位:秒

Pareto traffic: 同上,不過是排列圖分佈(Pareto)

六、Recorder

模擬收到的包不是按發送順序排序的。

No Recoder:不模擬

七、Disconnection

模擬週期性斷開鏈接的行爲。

Connection time: 一段時間週期內,link保持鏈接狀態的持續時間。

Disconnection time: 一段時間週期那日,link保持斷開狀態的持續時間

Disconnection rates: link發生斷開鏈接的比率。

相關文章
相關標籤/搜索