在近的統計中,蘋果應用商店中共有超過500,000種應用,而且Android市場也有超過了300,000種應用,這些還不包括其他平臺上的應用,像RIM Playbook、Microsoft Windows Phone和Windows Mobile。此外,每一個平臺都可以為各種設備出售各種操作系統版本。開發應用需要在這些各種型號和操作系統版本的組合上測試和驗證程序。自動化移動應用測試是的發布時間表可以維持的方式。下面,我們探討一下自動化測試移動應用程序所面臨的挑戰。

  下面是移動應用的自動化測試挑戰:

  自動化腳本需求:自動化腳本需求在一個應用程序發布、正在被使用,和隨后需要推出更新時更為緊迫。所有現存的特點需要每次推出更新時被測試,要確保在升級代碼的時候沒有回歸誤差。同時,各種各樣的造型和模型,特別是像Android平臺、自動化腳本、測試不可避免。

  多種語言和環境腳本:企業中通常采用將測試腳本可能需要綜合回到語言和測試環境中,像JUnit、QTP、PERL或者Python。

  分布式測試:越來越多的移動測試外包出去,甚至是海外外包。開發人員和測試人員可能地理上是分離的。測試環境下可能需要處理全世界許多地方的多個時區,或者使用不同的當地電信服務供應商。測試環境可能需要24/7/365和互聯網/瀏覽器訪問可用。

  發布自動化錯誤和崩潰跟蹤:一兩個崩潰之后,用戶會放棄移動應用,甚至可能將其刪除。移動應用可能需要在內部測試模式一段時期后,才第一次在應用商店發布。自動化測試工具可能需要監測和跟蹤錯誤和崩潰,這些可能在正式的測試時遺漏掉了,即使在一個正式的發布之后。

  測試設備登記管理:測試設備登記,特別是對于iOS設備,是一件苦差事,個人電話ID可能需要在蘋果網站上注冊。安裝包需要以電子郵件的形式發送給測試人員進行安裝和測試。自動化測試工具平穩并自動化地管理注冊,讓這個過程高效和有效。

  多個電話模型可用性:打開移動操作系統,如:Android有一大批制造商直銷運行著不同版本操作系統的移動設備。在這種情況下,移動應用測試要求種類繁多的設備制造商和模型可用,用以完成可靠的驗證和認證。

  模擬器處理器缺陷:手機模擬器,用筆記本電腦或者臺式電腦運行時可以使用其他的處理器,移動設備上只能使用一個處理器。為了完成可靠的測試,自動化測試需要在實際的電話上操作,而不只是模擬器。

  遠程響應測試:移動應用在手機上可以獨立的,或者通過后端服務器在執行期間頻繁訪問。后者中,從多個地理位置進行遠程測試可能需要成為自動化測試的一部分。這是為了確保應用不論在哪里使用,其響應時間是合理的。