UIAutomator2-UI自動化框架搭建


為什么選用UIAutomator2?

Nemo社區UI自動化選用的Android UI自動化框架UIAutomator2,經使用發現,該框架有如下優點:

1.UI自動化編寫采用python,學習成本低

2.UI自動化腳本運行穩定

 

與Appium相比,又有如下突出優勢:

1.環境搭建便捷

2.UI控件識別有專業工具,可視化好

 

環境搭建
1.jdk安裝,建議版本1.80以上

 

2.Android環境

從谷歌官網下載Android Platform Tools https://developer.android.com/studio/command-line,解壓,並加包含adb.exe的目錄加入到系統的PATH中

https://developer.android.google.cn/studio/releases/platform-tools

環境安裝后驗證代碼:

 

 

3.Python3環境(3.6.5以上)

 

UIAutomator安裝
安裝要求Requirements
  • Android版本 4.4+
  • Python 3.6+
如果用python2的pip安裝,會安裝本庫的老版本0.2.3;如果用python3.5的pip安裝,會安裝本庫的老版本0.3.3;兩者均已經不會再維護;PYPI上的最近版本是這個:https://pypi.org/project/uiautomator2/
1.安裝 uiautomator2
# 鑒於uiautomator2還在開發, 可以添加前綴 --pre來安裝開發版本或升級現有版本
pip install --upgrade --pre uiautomator2

 

或者使用git安裝:

git clone https://github.com/openatx/uiautomator2
pip install -e uiautomator2

 

安裝提示success即可。

2.安裝守護進程到手機里

電腦連接上一個手機或多個手機, 確保adb已經添加到環境變量中,執行下面的命令會自動安裝本庫所需要的設備端程序:uiautomator-server 、atx-agentopenstf/minicapopenstf/minitouch

# init 所有的已經連接到電腦的設備
python -m uiautomator2 init

 

有時候init也會出錯,這時候需要我們手動init安裝提示success即可。

 

3.安裝 weditor (UI查看器,編寫腳本時用,相當於Appium的uiautomator viewer)

因為uiautomator是獨占資源,所以當atx運行的時候uiautomatorviewer是不能用的,為了減少atx頻繁的啟停,開發了基於瀏覽器技術的weditor UI查看器。

安裝方法(備注: 目前最新的穩定版為 0.1.0)

pip install -U weditor

 

Windows系統可以使用命令在桌面創建一個快捷方式 python -m weditor --shortcut

命令行啟動 python -m weditor 會自動打開瀏覽器,輸入設備的ip或者序列號,點擊Connect即可。

 

 

應用及操作

 

uiautomator2使用基本過程

1.選擇合適的方式連接手機,如usb數據線,Wi-Fi

2.使用工具,抓去手機app的控件元素

3.基於元素控件,調用uiautomator2 API編寫UI自動化腳本

 

手機連接方式

1.使用WIFI連接

 

手機獲取到手機的IP,並確保電腦可以PING通手機。手機的IP可以在設置-WIFI設置里面獲取到。華為手機無法通過Wi-Fi連接(華為系統原因)

 

比如手機的IP是10.242.23.215,連接設備的代碼為

import uiautomator2 as u2 //依賴包
d = u2.connect('10.242.23.215')

 

 

2.使用USB連接

 

手機的序列號可以通過adb devices獲取到,假設序列號是123456f,連接代碼為

import uiautomator2 as u2
import uiautomator2 as u2 //依賴包
d = u2.connect('10.242.23.215')

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM