能夠參考這篇: ADB詳細介紹
html
UIAutomator是android的自動化測試框架,可跨APP。與instrumentation框架不一樣,UIAutomator不須要測試對象源碼,所以,爲黑盒測試框架。同時,與Monkey不一樣,UIAutomator不以座標爲主線,而是經過控件屬性過濾(好比搜索文本爲「提交」的按鈕),獲取控件自己。這很像小時候玩紅白機遊戲所用的金手指軟件。java
Android SDK提供了UIAutomatorView工具,用於獲取APP的佈局信息,間接輔助測試。關於工具的使用,能夠參照以前的博文http://m.blog.csdn.net/daihuimaozideren/article/details/78226810,這裏就再也不敘述。android
說一句「欲練此功必先自宮」的話,免得部分同窗浪費時間。
UIAutomator的缺點,是隻支持SDK 16(Android 4.1)及以上,不支持Hybird App、WebApp。web
關於UIAutomator的官方文檔,可參照官方文檔api
uiautomator2 是一個Android UI自動化框架,支持Python編寫測試腳本對設備進行自動化。底層基於Google uiautomator瀏覽器
uiautomator2和uiautomator的區別app
一、api不一樣但也差很少框架
二、Uiautomator2是安卓項目,而Uiautomator是java項目ide
三、Uiautomator2能夠輸入中文,而Uiautomator的java工程需藉助utf7輸入法才能輸入中文工具
四、Uiautomator2必須明確EditText框才能向裏面輸入文字,Uiautomator直接指定父類也能夠在子類中輸入文字
五、Uiautomator2獲取控件速度快寫,而Uiautomator獲取速度慢一些;
appium 是一個自動化測試開源工具,支持 iOS 平臺和 Android 平臺上的原生應用,web應用和混合應用。
「移動原生應用」是指那些用iOS或者 Android SDK 寫的應用(Application簡稱app)。
「移動web應用」是指使用移動瀏覽器訪問的應用(appium支持iOS上的Safari和Android上的 Chrome)。
「混合應用」是指原生代碼封裝網頁視圖——原生代碼和 web 內容交互。好比,像 Phonegap,能夠幫助開發者使用網頁技術開發應用,而後用原生代碼封裝,這些就是混合應用。
重要的是,appium是一個跨平臺的工具:它容許測試人員在不一樣的平臺(iOS,Android)使用同一套API來寫自動化測試腳本,這樣大大增長了iOS和Android測試套件間代碼的複用性。