1. 程式人生 > >移動端相容性測試

移動端相容性測試

什麼是相容性測試

相容性測試是指測試軟體在特定的硬體平臺上、不同的應用軟體之間、不同的作業系統平臺上、不同的網路等環境中是否能夠很友好的執行的測試。–【百度百科】

為什麼要做相容性測試

目前碎片化十分嚴重,尤其是安卓裝置。安卓裝置碎片化、品牌碎片化,大家熟知的安卓品牌都有好多家,每家可能還有定製的系統,都給我們適配帶來了不小的挑戰。除了上面的碎片化,當然還有系統版本碎片化,螢幕碎片化等,為了給使用者更好的使用者體驗,做APP的相容性測試,還是非常有必要的。

相容性影響因素

  • 使用者
  • 硬體
  • 軟體
  • 技術
  • 網路

影響因素大致可以分為以上幾類,我們對所測APP做相容性測試時,可以從以上方面去考慮。

1、使用者

我們需要依據自身APP使用者群體的特徵以及使用習慣,去做相應的相容。比如使用者群體如果大多是老人的話,可以考慮大字型的適配。比如針對旅遊人士,可以考慮過程中網路的狀況。如果擁有大量海外使用者,可以考慮多幣種、多語言、多度量、時區問題。

2、硬體

  1. 裝置型別(手機、平板、穿戴式裝置)
  2. 生產商(安卓手機存在每個廠商的定製化差異)
  3. 顯示屏(螢幕大小、解析度)
  4. 特殊硬體功能(NFC、藍芽、相機、定位功能等)

3、軟體

  1. 作業系統
  2. 瀏覽器核心
  3. 伴生應用

4、技術

  1. RN、H5、native
  2. 開發語言(oc、swift)

5、網路

  1. 2G、3G、4G、wifi 相容各種網路下APP的表現

iOS APP相容性

  • 螢幕解析度
  • 螢幕尺寸(含異形)
  • 作業系統版本
  • Xcode版本
  • 開發語言
  • 第三方庫或SDK
  • 安裝、升級

Android APP相容性

  • 螢幕解析度
  • 螢幕尺寸(含異形)
  • Android版本
  • 系統版本
  • 處理器架構(arm、x86)
  • 開發語言(Java、koltin、混合)
  • 第三方庫或SDK
  • 安裝、升級

H5相容性

  • CSS樣式相容(一些屬性的瀏覽器標示字首沒有新增,導致預設瀏覽器不認識這個屬性,所以樣式錯亂。有些佈局不靈活,樣式邊界處理不好,導致寬窄屏顯示異常)
  • JS相容(主要是瀏覽器或者系統版本,新的js api不支援,但是沒有做降級處理)
  • 第三方庫或SDK
  • 框架(react、vue……)
  • 快取(sessionstorage、localstorage)

哪些場景需要做相容性驗證

  • UI顯示
  • 多次快速點選
  • 拉起虛擬鍵盤擋住輸入區
  • 虛擬物理按鍵收起與顯示
  • 多個輸入框來回切換
  • 控制元件焦點熱區文體
  • 前後臺、多個應用切換
  • 指紋識別和faceid等
  • 框架升級
  • 網路
  • 新老版本相容
  • 第三方依賴庫或者SDK升級
  • 前後端版本相容

如何做相容性測試

主要分為內部和外部。內部由測試人員自己覆蓋主要機型。機型選取的原則是,根據自己APP使用者的機型,選取至少top10進行人工相容性測試。內部還可以進行的就是UI自動化測試。外部可以藉助雲測平臺,比如testin、testbird等。