移動裝置的自動化測試工具,如何選型?

博為峰網校發表於2022-12-23

一、問題的提出

最近二兩年來,一直在從事移動裝置的自動化測試工作,可以說小有心得。但最近由於種種原因,面臨著對移動裝置的自動化測試工具的更換工作。所以,一個問題呈現在面前。我們需要為我們的專案選出一款新的自動化測試工具,具體來說就是我們要選出可以支援iOS,android,windows phone甚至是黑莓等裝置的自動化測試工具。當然在講我的案例前,我希望針對我們對工具的選型工作能夠對大家有參考作用,以便未來在您可能遇到類似的問題時,也能夠有章可循。 進入》                                軟體測試社群學習交流      加我VX:atstudy-js 回覆“測試”,進入 自動化測試學習交流群~~

日常我們目前公司的mobile app基本上實際上是web based 的app,所以在此之前我們的所有自動化測試指令碼都是建立在基於對web自動化測試工作支援較好的sahi上。而我們的mobile automation則是使用chrome瀏覽器來模擬mobile client,使用sahi來進行自動化工作,整體來講,mobile 應用的自動化工具是很成功的,自動化覆蓋率比較好,而且執行的速度較快,也為公司節省了許多金錢。但實際上我們也面臨一個問題,就是我最終釋出的應用實際上是一個hybrid應用,而且在實際測試工程中,手工測試人員由於覺得大部分自動化測試跑在chrome上,他們對自動化的信任度也不能夠達到較高的程度,所以他們覺得,有必要把自動化測試覆蓋掉的用例也要手工跑一下,以免出現意外。當然我們非常認可同事的認真工作的態度,但我們確實也應該解決這一問題,讓automation真正跑在裝置上。基於以上,我們打算更換一款工具,能夠讓我們的自動化測試跑在真實裝置上,而非模擬器上。

那麼現在問題來了,我們選什麼呢?所以我們得先分析一下需求。首先,我們的自動化必須能夠跑在裝置上。其次,工具必須能夠支援iOS,android,windows phone,blackberry等。除這兩項硬性規定外,我們的需要工作儘可能好用,能夠支援企業級應用,當然如果能夠免費最好。

二、 找到至少兩組備選方案

首先我們得藉助一下google,百度,查詢一下有沒有適合的工具。

首先映入眼簾的是它。

我們先來看一下 appium 能幹什麼?看簡要說明它主要能夠實現 iOS,Android 以及FireFox OS 裝置的自動化測試,包括 native,hybrid 及手機 web 應用。最重要的是它還是開源的。Appium 是跨平臺的,即你可以寫一套測試指令碼同時執行在 android 及 iOS 平臺上。Appium 是基於客戶端/伺服器架構,它實際上是提供一套 Restful API.它從客戶端接收連線,偵聽命令,然後在移動裝置上執行命令。在客戶端我們可以使用任何語言來編寫測試指令碼。服務端可以執行在不同的機器上。

我們再來看看這個傢伙,叫做 SeeTest automation:

SeeTest automation 支援 iOS,Android, Blackberry 及windowsphone 的自動化測試。它能夠在真實裝置上錄製也可以在模擬器上錄製,可同時在不同的裝置執行測試,外掛豐富,包括 HPUFT(QTP),WebDriver(selenium),JunIT,微軟 visual studio 和 pathon。可以與ALM 連線,Jenkins 和其它持續整合工具。可以透過 usb 或是無線網線與裝置進行聯接。

這個 SeeTest automation 功能還是真奇全,但這個軟體是商業軟體,它還有配套的SeeTest Could 以及虛擬化軟體。價格比較昂貴,功能強勁。

我們再在看一款,叫 KeyNote DeviceAnyWhere,這是一款和 SeeTest Automation 差不多的軟體,支援支援 iOS,Android, Blackberry 及 windowsphone 的自動化測試。而且它也對裝置提供雲的支援。功能強,價格貴,是一款企業級的商業軟體。

三、對比

透過對備選軟體的對比,相信很容易能夠得出您所需要的適合的移動裝置自動化測試工具。可能也有看官在好奇我們最終選了什麼軟體。我可以負責任的告訴大家,做為一家有錢任性的大公司,我們毫不猶豫的選擇了商業軟體,而且那兩款商用軟體都有啊。

拋開錢的問題,做為一家企業,你有可能會有這樣的潛在需求,即你希望你的裝置是可以集中管理的,比如說,我在大連有一個移動裝置中心,然後在北京也有一個,在上海也有一個,如果貴公司是全球企業,可能你在美國,英國等都有一個移動裝置中心,如果需要裝置是共享的,那麼如果你選擇的自動化測試工具提供雲的支援,那麼每個中心的裝置大家都是共享可用的,你也可以最大化的利用到每一臺裝置。

當然,大多數網際網路公司 我相信會更可能選擇開源的appium,它免費,又可以自己動手定製,一般來講中國大多數網際網路公司對自動化測試雲的要求不是那麼強烈,如果真有要求,我們一般也會自己想辦公,利用現有的開源軟體及技術,自己來搭建。

講到這裡,實際上我們應該已經瞭解到,對於任何一種工具的選擇,我們首要考慮其功能性,看能夠滿足我們的要求。其它,看價格。價效比高的優先考慮。最後我們一定將潛在的需求也列出來,是否有裝置雲的要求,是否有持續整合的要求,是否對我們所擅長的程式語言有支援,以及是否有利用擴充套件等。

除此外,如果您打算入手商業工具,這裡還建議各們先試用,小範圍使用評估並反饋結果。一般商業軟體都有試用期,通常為一個月,如果試用一個月不夠,通常情況下要求延長試用期也是可行的。

最後:

可以到我的個人V:atstudy-js,可以免費領取一份10G軟體測試工程師面試寶典文件資料。以及相對應的影片學習教程免費分享!其中包括了有基礎知識、Linux必備、Mysql資料庫、抓包工具、介面測試工具、測試進階-Python程式設計、Web自動化測試、APP自動化測試、介面自動化測試、測試高階持續整合、測試架構開發測試框架、效能測試等。

這些測試資料,對於做【軟體測試】的朋友來說應該是最全面最完整的備戰倉庫,這個倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你!

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31407649/viewspace-2929281/,如需轉載,請註明出處,否則將追究法律責任。

相關文章