文 | Vicky
采編|Emily

淺談App測試(上)~帶音頻
一、功能測試?
二、性能測試
(1)耗電量
影響因素:定位、傳感器、藍牙,其中CPU、持續定位是兩個平臺造成耗電的主要因素。
(2)流量
也就是常說的耗流量,影響因素有重復請求,重復下載,大圖。
(3)內存
跟性能相關的概念有內存泄漏、內存占用峰值,其中通常造成性能體驗問題的是內存泄漏,會導致用戶手機可用內存越來越少,app越來越卡。
Xcode中有一個 Allocations工具,可以跟蹤由應用程序分配的對象內存。可以用來在疑似內存泄露的地方,通過反復操作,查看某些對象內存是否有被正常的釋放,從而得知是否發生內存泄露,針對性進行分析和優化。
(4)卡頓
FPS意思是每秒傳輸幀數,也就是我們常說的"刷新率"。每秒鐘幀數愈多,所顯示的畫面就會愈流暢,FPS值越低就越卡頓,一般我們的APP的FPS只要保持在 50-60之間,是比較流暢的。
影響因素:通常有UI布局不合理,過度繪制;主線程執行耗時操作耗CPU;內存不足,有占用GPU較長的函數。
(5)啟動時間
APP的啟動時間,直接影響用戶對你的APP的第一體驗和判斷。如果啟動時間過長,不單單體驗直線下降,而且可能會激發蘋果的watch dog機制kill掉你的APP,那就悲劇了。
一般是分析app的啟動過程,查看耗時的環節進行分析。可能是在啟動的時候加載的配置太多,或者是需要拉取的接口太多,具體情況。
(6)安裝包大小
(1)資源優化。刪除冗余資源,資源文件最少化等。
(2)圖片優化。格式的圖片做壓縮處理
(3)插件化。比如功能模塊放在服務器上,按需下載,可以減少安裝包大小。
(7)穩定性
7*24小時跑monkey, 一般是通過自動化的方式跑7*24小時,看程序會不會崩潰
三、兼容性測試
從不同系統,版本,分辨率,機型(不同廠家ROM)維度進行適配測試
(1)盡量覆蓋該產品的主要用戶,一般采取APP內部埋點的方法統計用戶機型分布,取top10來覆蓋。
(2)關注各功能界面在不同分辨率下是否存在UI展示問題比如出現錯位,遮擋,留白,拉伸和模糊等問題。
(3)通常選擇在少數主流設備上執行所有用例,在其他兼容性范圍內的設備上覆蓋主要功能的測試用例;
四、異常測試
1.接口異常,比如接口超時、接口返回值與約定不一致,App需要做異常兼容處理
2.內存不足,app能否正常響應;
3.反復操作:反復操作某個功能(一般是比較重要的功能),不斷點擊和刷新,是否會出現閃退
4.系統中斷,像電話、短信在app運行過程中被中斷了,結束后是否可以正常運行;
5.弱網:wifi、4G/3G/2G、wifi與數據流量的切換
新書速遞
吳老的java版《selenium webdriver3 實戰寶典》和python版《selenium Webdriver 3.0 自動化測試框架實戰指南》出版了,代碼拿來就能用。
測試資源
40G測試開發課程視頻資源免費提供,請聯系吳老師微信wulaoshi1978

微信公眾號:光榮之路(ID: GloryRoadTrain)
招聘QQ群:203715128