原創|行業資訊|編輯:郝浩|2015-10-23 15:47:43.000|閱讀 819 次
概述:在市場上有很多的自動化測試工具,有開源的,也有付費的,其中前者被廣泛應用在自動化測試社區,如果你想要在項目中選擇合適的開源自動化工具,會相當的棘手。 以下筆者收集了移動開發常用的五個開源自動化工具,供你參考。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
自動化測試在產品測試中起著非常重要的作用。它能夠給項目開發帶來諸多好處:在產品開發階段,重復可靠的運行,確保沒有回歸方面的問題;在產品面臨交互的關鍵時刻,用最短的時間覆蓋最大化面積的測試執行區域;它重復地進行著每個周期的回歸測試,最大限度地減少人為錯誤所產生的風險或疏忽。
在市場上有很多的自動化測試工具,有開源的,也有付費的,其中前者被廣泛應用在自動化測試社區,如果你想要在項目中選擇合適的開源自動化工具,會相當的棘手。 以下筆者收集了移動開發常用的五個開源自動化工具,供你參考。
Calabash是一個用于Android和iOS自動化驗收的開源的測試框架。作為一個跨平臺的框架,它為Android和iOS的自動化測試提供了獨立的庫,支持Cucumber——通過自然的英語傳遞應用行為從而實現BDD(行為驅動開發)。
Calabash提供了一條連接Cucumber測試工具與移動端操作系統的橋梁。所編寫的Cucumber測試聲明列表會形成不同的測試場景,而這些聲明全都是由Ruby定義的。
在Calabash中,一個Cucumber的聲明只允許被定義一次,但是可重復運用到一個Cucumber腳本下的多個不同的場景之中。
實際的測試都是由Gherkin語言進行編寫(在feature文件中),再轉譯成Ruby語言,然后運行在Cucumber框架之中。
Appium是由Sauce Labs公司開發的一個用于本地、混合、移動web應用程序的開源自動化測試框架。Appium框架中的庫函數可調用運行在后臺操作連接設備的Appium服務器,在內部它使用JSONWire協議與使用Selenium WebDriver 的iOS或Android應用程序產生聯系。
與主要由Ruby支持的Calabash不同的是,Appium使用的框架語言可由你任意選擇,這其中包括Java、 Python、 Ruby和所有其它Selenium WebDriver支持的語言。
Appium服務器被托管在節點服務器之上。你可以通過一組節點命令來開啟Appium服務器。如果你使用Appium獨立應用程序來作為你的服務器(從Appium網站下載),Inspector工具就可以對你應用程序上的所有定位器(Locator)進行定位/識別/操作。
Robotium是一個用于功能、系統和驗收測試場景開發的開源測試框架。它與Selenium很相似,但只能用于Android。目前,它已經獲得了Apache License 2.0的許可。
由于非常簡單并且能夠創建強大健壯的自動化場景,Robotium在自動化社區中廣受歡迎。它使用了運行時間與GUI組件相結合的方式,安裝測試用例套件來作為Android設備或者模擬器上的應用程序,從而提供了測試執行的真實環境。
Frank是一個iOS應用程序自動化框架,它提供了在Cucumber中使用英語句子編寫測試場景的功能。
Frank需要被編譯進測試環境下的應用程序中,這就意味著你的源代碼會發生強制性改變。它結合了發送到運行著本地應用程序的服務器端的Cucumber和JSON命令,并通過UISpec運行這些命令。
UIAutomator是由谷歌開發的用于對本地的Android應用和游戲提供先進UI測試的測試框架。這是一個包含創建功能性UI測試所需API和運行測試所需執行引擎的Java庫。這個庫附帶Android SDK以及供初學者學習的入門教程。它有一個很大的優勢是在運行訪問不同進程時它能夠給予JUnit 測試用例特殊許可。雖然它非常不錯,使本地的應用程序自動化變得更加簡單了,但是它對于WebView自動化的支持卻相當有限。另外它只支持API級別在16及其以上的設備,當然這不是一個大的問題,因為現在大多數的應用程序都運行在API級別在19及其以上的設備上。
本文翻譯自 轉載請注明 本文轉載自:慧都控件網
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn