應用程序通常會考慮以下幾個方面:
1)操作系統版本
包括Andoird版本,iOS版本。
2)屏幕分辨率
安卓800*480,960*640,1280*720(720p),1920 * 1080(1080 p),2560*1440(2k)。
對於iOS來說,只需要考慮近幾代機型對應的分辨率即可。
3)來自不同制造商的rom
不同廠商的ROM,大部分廠商都定制了android系統。在實際操作中,他們會遇到調用相機和底層服務不兼容,不同手機對方向和重力傳感器的靈敏度設置不同等問題。
4)網絡類型
網絡類型通常考慮WiFi、2G、3G4G下的功能。此外,M版網站考慮了不同的瀏覽器類型和屏幕分辨率。
第二:流量測試
在移動產品的測試中,需要測量App使用的流量。壹般來說,流量可以分為:壹種是用戶操作直接導致的流量消耗;另壹個是後臺,即沒有被用戶直接使用的流量消耗。
流量測試方法:
1.基於系統自身的功能。
例如Android proc/uid _ stat/{ uid }/TCP _ send
Android proc/uid _ stat/{ uid }/TCP _ rcv
2.通過API或系統埋點獲取數據。
3.通用流量測試方法:手機搶包或wifi代理(查爾斯)。
常用的流量節省方法:
1.數據壓縮。
壓縮包括界面文本數據壓縮、js文件壓縮和圖片壓縮。
2.采用不同的數據格式
比如使用JSON格式作為接口數據返回格式,通常比XML格式要小。
3.控制訪問頻率
這主要用於後臺數據報告、推送消息檢查和其他計時機制。
4.只獲取必要的數據
有時候APP的壹個頁面上有很多內容,用戶可能只看了壹部分。從後臺拉太多數據是壹種浪費,可以用分屏加載或者懶人加載來減少流量消耗。
緩存
圖片、js等數據可以臨時存儲,但由於手機存儲空間有限,還需要控制整個緩存大小,並為用戶提供清理緩存的選項。
6.為不同的網絡類型設計不同的訪問策略。
有些應用程序會根據不同的網絡類型返回不同的內容。
第三:通電測試
在電電池技術沒有大突破的前提下,這方面總會有壹些瓶頸。如果某些App架構設計不好或者代碼對有缺陷,就有可能導致高功耗,所以功耗測試也很重要。
GSam電池監控器專業版。
第四:弱網絡測試
與PC互聯網產品相比,移動互聯網產品有壹個特點,就是前者使用的網絡是多種多樣的,除了Wif,經常在移動網絡下使用,移動網絡遇到的情況更復雜,比如地鐵、隧道、運動場等等。所以網絡不穩定比較容易發生。很多時候,App的壹些問題只有在復雜的網絡條件下才會暴露出來。與其讓用戶去發現和抱怨這些問題,不如在測試階段盡量模擬這樣的網絡狀況,盡早發現和修復這些問題。
工具:
1下的網絡延時模擬器。Windows操作系統
2.MAC下的網絡鏈路調節器
第五:穩定性測試
在保證基礎功能正確的基礎上,App的穩定性很重要。如果壹個App經常閃退或者卡頓,用戶體驗會受到很大傷害,在有其他競爭產品的情況下也容易造成用戶的流失。
第六:安全測試。
包括安裝包的安全測試(代碼是否可以反編譯,安裝包是否簽名,完整性檢查,權限設置檢查等。).
敏感信息測試(數據庫、日誌、配置文件)。
軟鍵盤劫持(金融APP登錄頁面的用戶名和密碼輸入框),
賬號安全(密碼是否為明文,密碼傳輸是否加密,賬號輸入錯誤過多,鎖定,會話提醒和註銷機制)
數據通信安全性(密鑰數據是否哈希或加密,密鑰連接是否使用安全通信,是否驗證數字證書的合法性,是否驗證數據的合法性。
組件安全測試。
服務器端接口測試(SQL註入測試、XSS跨站腳本攻擊、CSRF跨站請求偽造、非授權訪問等。).
第七:與環境相關的測試。
在實際項目中,我發現有壹些缺陷與App的運行環境有關,所以在設計測試時,要更多地考慮這些場景,比如:
1)幹擾試驗
接到電話,收到短信,通知欄收到消息,彈出沒電的提示框,彈出第三方安全軟件報警。
2)權威測試
有些用戶在實際使用App時會有意識地屏蔽某些功能。比如有些用戶覺得允許某個App訪問電話簿或相冊可能會泄露隱私,於是在手機裏設置了禁止該App訪問相冊的權限。
3)邊界測試
手機環境本身有自己的邊界條件,需要在測試中覆蓋。常見的情況有:
可用存儲空間太少,無SD卡/雙SD卡,飛行模式,系統時間誤差(晚於和早於標準時間),第三方依賴(比如我們的App依賴某個第三方App,但是現在第三方App沒有安裝或者版本太低)。
4)安卓定位測試
白盒模式下的模擬