如何應對移動測試的五大挑戰?

移動設備正在爆炸式的增加,手機已經成爲最主要的聯繫方式,天天都會有數千款app產生。移動化已經不止侷限在電話和平板電腦,汽車、可穿戴設備、和家用設備的app也逐漸涌現。android

移動設備的高速增加已經打開了將其整合成計算環境的通道。現在的移動應用程序提供複雜的功能平臺,有限資源計算。多樣性提出了獨特的挑戰,須要獨特的測試策略。web

1.移動設備數量「爆炸」bash

自從Android1.0以來,已經有超過5億臺Android設備問世,從2007年以來iOS設備也超過了2億臺。這麼多的移動設備包括手機、平板、可穿戴設備等,可想而知app要面臨的運行環境有多少種。app

即便被測應用在給定的設備上運行良好,QA團隊也沒法保證它能在類似的設備上運行。不一樣設備的屏幕分辨率、CPU、內存、系統優化程度和硬件均可能存在差別。
圖片描述工具

2.設備碎片化 & 系統平臺多樣化測試

移動測試矩陣最難的地方或許就是設備碎片化了。雖然iOS設備矩陣增加速度很快,Android操做系統的設備碎片化問題尤其突出。以下圖:
圖片描述優化

因爲移動應用可能會被部署到各類不一樣設備上,而這些設備可能會存在各類各樣的兼容性問題,因此說移動應用測試面臨巨大的挑戰。spa

操做系統,如:iOS,Android,Windows等。
操做系統版本,如:iOS 4.X,iOS 5.X,Android 4.X,5.X,6.X等。

3.不一樣的移動App類型操作系統

移動App多是native app,web app,也多是hybrid app。因爲每種app的實現都存在差別,測試每種app的方式都是不一樣的。正如咱們所見,從安裝到功能,每一個app的行爲都是不一樣的,也能夠理解它們的測試方式和測試覆蓋率會存在差別。
圖片描述code

4.衆多的測試接口

移動設備模擬器是一個重要的測試工具,利用模擬器,咱們能夠作功能測試和迴歸測試。模擬器類型多種多樣,然而利用模擬器測試其實並不夠真實。

模擬器的優勢是將測試限定在了必定範圍,不要期望用模擬器來代替真機。使用模擬器來作in-the-wild測試是一個不錯的選擇。

5.種類繁多的測試工具

先不說market中自動化測試工具的數量有多少,光是其複雜性已經令人望而卻步了。免費的、付費的;測試native app的、測試web app的;android平臺的、iOS平臺的。哪一款自動化測試工具纔是最適合的呢?或者說,是否有一款工具使咱們須要的?

解決

那麼移動測試的理想解決方案是什麼?應該採起什麼樣的方式?讓咱們繼續往下看:

1. 移動測試實驗室

若是移動測試的需求很是巨大並且頻繁,搭建一個移動測試實驗室是一個不錯的選擇。固然也能夠尋找使用一個外部的測試實驗室,或者雲端移動測試解決方案。

咱們應該構建一種能實現最大覆蓋率的測試環境。測試實驗室應該構築在真實手機之上,而不單單是在模擬器上進行測試。測試手機應該覆蓋各類操做系統,終端類型,屏幕大小,內存大小以及各類可能影響app運行的因素。

2. 正確的測試方案

應該使用怎樣的移動測試方案呢:

  • 一款只須要寫少許腳本的IDE?

  • 全部Tester都能使用的關鍵詞驅動的方式?

  • 結合移動雲來應對終端碎片化問題?

  • 基於屬性和圖片識別對象的方式?

有許多解決方案能夠用:開源的有Robotium,Appium,Calabash,商用的有eggplant,perfecto等。

圖片描述

本文系TestBird測試工程師編譯整理。想了解更多開發測試相關信息,請訪問 TestBird

相關文章
相關標籤/搜索