淺談專項測試之弱網路測試

一.弱網路測試背景

移動端產品的使用並非完全都是在流暢的wifi環境,大部分使用者主要使用4G,3G,2G等網路,另外因為移動端產品使用的場景多變,如進公交,上地鐵,坐電梯,使得弱網測試顯得尤為重要。考慮到各種場景的客戶端展示及容錯,提升產品的印象和使用者體驗,提高產品的健壯性,弱網測試必不可少。

二.弱網路測試建議

弱網下需要進行功能點測試,無網路測試,網路切換測試等,測試過程除了關注功能點的實現,還應關注使用者體驗等各個方面

三.弱網路測試通用功能點總結

淺談專項測試之弱網路測試

四.弱網路測試用例例項

淺談專項測試之弱網路測試

淺談專項測試之弱網路測試

淺談專項測試之弱網路測試

Fiddler模擬弱網

1.手機設定上網代理

(1)啟動Fiddler,開啟選單欄中的Tools-Fiddler Options,開啟Options

(2)對話方塊

淺談專項測試之弱網路測試

(3)在Fiddler Options對話方塊,點選Connections,勾選Allow romote computers to connect後面的複選框,點選OK按鈕

淺談專項測試之弱網路測試

(4)在本機cmd裡面輸入:ipconfig,找到本機的ip地址

淺談專項測試之弱網路測試

(5)開啟Android的設定-WALN,找到和電腦連的一樣的網路,長按-修改網路,彈出網路設定對話方塊,找到代理選擇手動,主機名(電腦ip地址),埠8888(跟fiddler設定一致),然後點選確定按鈕

淺談專項測試之弱網路測試

2.Fiddler模擬限速環境

(1)設定埠號8888(保證沒被佔用)

淺談專項測試之弱網路測試

(2)重啟Fiddler

(3)手動設定上行,下行速率 網路取值演算法:1000/下載速度=需要delay時間(毫秒),比如50kb/s,需要delay200毫秒來接收資料

Rules-Customize Rules-CTRL+F查詢(SimulateModem),然後修改速率

2G/3G建議上下行速率如下:

淺談專項測試之弱網路測試

淺談專項測試之弱網路測試

淺談專項測試之弱網路測試

淺談專項測試之弱網路測試

(4)設定模擬調變解調器的速度rules-performance-simulate modem speeds -儲存

(5)重啟Fiddler

淺談專項測試之弱網路測試

常見問題及原因

1。上傳大圖,多圖,影片,檔案時,在弱網環境下出現進度條走到一半卡住然後又從頭開始

原因:採用分段上傳方式,在請求超時時間到時,分段傳輸沒有結束,程式碼邏輯不對,導致每次重試都重頭上傳,一直迴圈。

2。在弱網路環境下容易出現登入不上或者登陸上馬上掉線;

原因:登入沒有緩衝機制,而請求超時時間的設定沒有區分同網路情況;解決方案:針對wifi、2g、3g、4g設定不同的超時時間。

3。重新整理頁面很快就給出暫無內容的提示,明顯沒有到請求超時時間;

原因:可能是連線超時時間太短,wifi下設定兩秒,在弱網路下需要加長。

4。弱網路環境下,請求的資料返回時間較長,等待的過程中,如果頁面上的相關控制元件仍然可以操作,則有可能出現閃退現象;

原因:依賴資料的控制元件操作,在資料返回前沒有做相容處理。

5。邏輯錯誤。比如:購買時扣費和獲得不一致,領取物品沒到賬等。

6。頁面顯示錯誤。比如:頁面重疊。

7。使用者登入應用時下載初始化資料,下載過程中因網速太慢點選取消並重新登入,資料下載過程中、下載失敗後,未進行資料回滾,中止後重新下載,出現數據重複

8。使用者點選資料上傳,資料上傳過程中網路弱且不穩定,基於聯網狀態自動觸發資料上傳,導致出現數據重複寫入,形成髒資料

9。。在弱網環境下,使用者輸入使用者名稱和密碼點選登入,應用連結超時後,按照強網業務邏輯處理,導致返回超時異常。

10。在弱網環境下,使用者輸入使用者名稱和密碼後點擊登入,資料下載超時,載入資料嚴重依賴於後來的非同步載入。資料還沒來得及返回,應用跳轉到下個activity,導致崩潰。

11。弱網環境下某個操作響應時間

原因:APP使用者對等待時間容忍度低,若弱網環境loading超過5s,使用者很容易kill應用後再次進入應用

12。弱網環境下直至超時,UI介面友好度&APP是否穩定

原因:容錯機制主要是考慮弱網情況下帶來的不穩定,常見的問題是:loading超時導致ANR or crash

【測試點】弱網環境直至超時,判定為斷網狀態,UI介面和提示,友好且理解無歧義

13。斷網後環境下,是否自動重發請求

原因:不同模組,開發對請求處理不同。測試前可瞭解,程式碼是否支援自動重複請求,自動重發請求的頻率是什麼?

【測試點】斷網後恢復網路,是否堆積網路請求(目前來說 理財模組 當10s左右無返回 則會重發請求),此時請求和返回正常情況下,是否出現異常情況。比如1次支付操作,斷網後堆積多個支付請求,恢復網路後因堆積多個支付請求,是否完成多次支付

ps:斷網後恢復網路,考慮APP進行操作目的是否對傷害使用者體驗,透過哪種手段 可以達到操作目的同時使用者體驗無感或者低傷害

14。弱網路環境下,請求的資料返回時間較長,等待的過程中,如果頁面上的相關控制元件仍然可以操作,則容易出現異常現(閃退現象、觸發底部時獲得原頁面請求資料)

原因:依賴資料的控制元件操作,在資料返回前沒有做相容處理

15。搜尋時輸入關鍵字會連續發請求,停下時,顯示最終的關鍵字搜尋結果,但很快又會被前面的關鍵字搜尋結果覆蓋了;

原因:中間的請求返回較慢,顯示了最終的結果後,之前的請求返回的資料應不做處理。