APP測試--IOS和Android 的區別


剛結束了APP項目一期,結合自己的經驗及其他博主的文章做出以下總結~

隨着各種APP攻占市場,在面試時經常會被問到:

1.web和app測試的區別?

2.IOS和Android app測試有什么區別?

這篇文章針對第2個問題展開,第1個問題會單獨總結一篇文章

一.功能區分

1.物理按鍵

Android:獨有3個物理按鍵,分別是主頁面、菜單、返回,

      1.返回鍵:一定要測,尤其是app首頁的返回

      2.菜單鍵:對於含有音視頻的app,需要關注切換時,切回到app后,app功能有無影響

      3.主頁面:切后台,app內功能有無影響,邏輯處理是否合理

      4.調出物理按鍵后,app是否適配、是否自動隱藏(尤其需要注意帶劉海的手機頁面顯示是否正常)

IOS : 所有的返回上一層,只能靠頁面功能實現

2.安裝

  • 生產環境:

    Android:可以通過各個手機自帶的應用市場或者是第三方的手機助手進行下載

    IOS:APP Store 和iTunes

  • 測試環境:

    Android:開發(安卓端、前端)將源碼git更新后,測試使用公司內部平台構建生成apk文件,即可隨意安裝

    IOS:開發將最新ipa包給到測試,測試上傳蒲公英,登錄,認證,把ipa上傳到蒲公英,發二維碼或者是給測試安裝地址,就可以了

3.兼容性

  • 系統兼容性

    Android:版本居多,還有不同手機型號的定制版系統

    IOS:版本相比較Android偏少

  • 屏幕尺寸和分辨率兼容性

    Android:分辨率多達20多種

    IOS:相比較Android偏少

  • 不同設備型號兼容

針對app,兼容性測試最好的方法:盡可能多的手機參與到測試中,在測試機不足的情況下,可以在產品上線前預留出時間發起內測;

web產品兼容性測試,選擇不同內核的主流瀏覽器,穩定版本或者最新版本,分辨率以自己正常使用的分辨率展開測試即可。另外,需要考慮的是,是否適配手機網頁。)  

4.原生技術支持

Android:

  以微信舉例,長按刪除,置頂聊天等操作,左滑則會進入通訊錄菜單

IOS:

  以微信舉例,長按沒有任何反應,左滑則會出現標記未讀和刪除操作

5.支付方式

對於一些有內購功能的APP(比如沖點券,比如買鑽石....),

Android:

  Android是直接調用第三方支付渠道的

IOS:

  需要先在你的APP store里綁定你的支付方式,然后通過APP store去完成支付操作

  PS:Apple對於一些非官方的支付渠道是不允許上架的

二.系統底層區分

1.運行機制

Android:虛擬運行機制

  1)所有的應用程序都是運行在虛擬機中,用戶界面其實是由虛擬機傳遞的,並且通過虛擬機,Android的任何應用程序都可以輕松訪問其他程序文件

  2)所有的Android應用程序都是運行在RAM里面的,所以會發現有時候Android用着用着會開始卡頓

  ps:補充知識,手機中的RAM和ROM,可以分別對應電腦的內存和硬盤這么理解

IOS:沙盒運行機制

  1)每個程序都有自己的虛擬地址空間。所以,程序之間是不能進行訪問的

  2)默認只會將應用的最后運行數據,記錄在RAM里面

2.程序后台運行機制

Android:

  任何程序都可以在系統后台運行

IOS:

  第三方程序不能在系統后台運行

3.消息推送渠道

Android:

  可以使用第三方或者自建平台進行消息推送,但是一般都是使用第三方的

IOS:

  消息推送渠道由蘋果官方提供的

4.頁面渲染機制

Android:

系統的優先級響應層級為:Application-->Framework-->Library-->Kernal,而Android系統的圖像處理這部分功能是屬於Library層的。
所以,當你觸摸屏幕之后Android系統首先會激活application應用,然后是framework框架,然后才是Library屏幕,最后是Kernal核心架構

IOS:

系統的優先級響應層級為:Touch-->Media-->Service-->Core,而IOS系統的圖像處理這部分功能是屬於Touch層的。
所以,當你觸摸了屏幕之后,系統就會最優先去處理Touch層,然后才是Media媒體,Service服務以及核心Core。

5.系統的開源

Android:

  系統開源,有非常多的第三方測試工具可以輔助測試
IOS:

  系統非開源,嚴重依賴mac環境

*******************************************************************************

1.android與ios后台運行機制的比較:

  android的后台可以說是“真后台”,因為android的應用退出到后台之后還是存在於內存中的,這樣的機制使它從一開始就是支持多任務的,這樣也帶來了一些麻煩,比如說有一些程序會惡意占用內存而不釋放,有時候就需要調用內存清理軟件或者重啟來釋放內存。IOS的后台嚴格來說是“偽后台”,因為退出到后台的程序並沒有存在於內存中,而只是記錄了app在退出時的狀態,而且它所實現的多任務只是通知、音樂播放、gps等等可以在后台實現多任務。ios app在退出前台的5s到10min之內就會進入掛起狀態,如果長時間不進入到前台程序就會被回收,等你再打開的時候就要重新進入程序了。這里有一個明顯的例子就是通常android 手機重啟后程序會全部殺死,而iphone重啟后點擊兩下home鍵,你在后台還能看見你之前打開過的程序。
 2.消息推送渠道

1)app在界面或后台運行(端內)

2)app從后台被移除(端外)

PS:未登錄/登錄推送處理邏輯測試時也需要引起注,未登錄收到推送要先允許通知

參考博文:http://www.360doc.com/content/16/0907/19/478627_589140715.shtml

     https://www.mob.com/about/news/241

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM