編輯:Android資訊
本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃!
自動化測試時下在產品測試上有著非常重要的作用。實現測試自動化有多種積極的方式,包括最大限度地減少測試執行時間;在關鍵的發布階段,用更少的時間確保更大的覆蓋范圍;在產品開發階段,可靠又重復性地運行以確保沒有引進回歸問題。最大限度地減少重復性回歸測試循環時的人為錯誤和疏忽的風險。
在市場上有很多可用的工具,開源的或要付費的。雖然付費和開源工具各有利弊,但是後者在自動化測試社區得到了廣泛的應用。根據項目需求來選擇合適的自動化工具是非常棘手的。
下面介紹5個最佳的iOS和Android開源自動化工具。
Calabash是一個開源的驗收測試框架,支持Android和iOS自動化。Calabash為Android和iOS自動化測試提供了一個單獨的庫。這是一個跨平台的框架,支持Cucumber,Cucumber能讓你用自然的英語語言表述app的行為,實現BDD(Behavior Driven Development,行為驅動開發)。
Calabash提供了一個橋梁,允許Cucumber測試對iOS和Android運行和驗證。Cucumber測試使用一列語句寫入,這些語句會形成很多測試場景。Cucumber中的所有語句使用Ruby定義。
在Calabash,Cucumber語句只能被定義一次,但可以在Cucumber腳本的不同場景中重復使用。
實際測試是用Gherkin寫的,依靠Ruby代碼的支持,並在Cucumber框架的上下文中運行。
優點
缺點
Appium是Sauce Labs出品的一個開源的自動化測試框架,用於原生、混合和移動的web app。框架內的Appium庫函數調用Appium服務器是在操作連接設備的後台運行的。它在內部使用JSONWireProtocol,來與使用Selenium的WebDriver的iOS和Android app進行互動。
不像Calabash只支持Ruby開發,在框架中使用Appium時,你可以從Java、Python和Ruby,以及所有其他Selenium WebDriver支持的語言中選擇。
Appium服務器被托管在Node服務器上。你可以通過觸發一組Node命令來啟動Appium服務器。使用Appium Standalone Application作為服務器(從Appium網站下載),Inspector工具可對app的所有定位器提供查找/識別/操作的能力。
優點
缺點
Robotium是一個開源的測試框架,用於開發功能性,系統,和驗收測試場景。它與Selenium非常相似,除了Robotium只適用於Android。它注冊在Apache License 2.0下。
因為它不但簡單,而且又具有創建強大又可靠的自動化場景的能力,因而它在自動化測試社區廣泛流行。
它采用運行時綁定到GUI組件。它安裝了一個測試用例套件作為在Android設備或仿真器上的應用程序,並提供用於執行測試的真實環境。
優點
缺點
Frank是一個iOS app的自動化框架,允許使用Cucumber編寫結構化英語句子的測試場景。
Frank要求測試時在應用程序內部編譯,這意味著對源代碼的改變是強制性的。這是一個使用Cucumber和JSON組合命令的工具,命令發送到在本地應用程序內部運行的服務器上,並利用UISpec運行命令。
優點
缺點
UIAutomator是由谷歌提供的測試框架,它提供了原生Android app和游戲的高級UI測試。這是一個包含API的Java庫,用來創建功能性UI測試,還有運行測試的執行引擎。該庫自帶Android SDK。有很多教程可供初學者上手。優點是它在運行訪問不同的進程時,會給JUnit測試案例特權。雖然這對本地自動化app既好又更簡單,但是它對web自動化視圖非常有限或幾乎沒有任何支持。它僅支持使用API level 16及以上的設備,不過這也不算什麼很大的因素,因為現在大多數的app支持API level 19及以上。
優點
缺點
近期因為項目的需要,研究了一下Android文件下載進度顯示的功能實現,接下來就和大家一起分享學習一下,希望對廣大初學者有幫助。先上效果圖: 上方的藍色進度條,
本文由碼農網 – 小峰原創,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃! Glide是一款基於Android的圖片加載和圖片緩存組件,它可以最大
顧名思義,AndroidEventBus ( github鏈接 : https://github.com/bboyfeiyu/AndroidEventBus )是
Android中的TextView是整個framework中最復雜的控件之一,負責Android中顯示文本的大部分工作,framwork中 的許多控件也直接或者間