前言
android sdk里面自帶的uiautomatorviewer.bat可以查看手機app上的元素,但是不太好用,網上找了個大牛寫的weditor,試用了下還是蠻不錯的
python環境:3.6
weditor環境准備
使用pip安裝weditor,github地址https://github.com/openatx/weditor
pip install --pre weditor
創建桌面快捷圖標
python -m weditor --shortcut
創建完成后,桌面會出現一個WEditor快捷圖標,雙擊就能啟動了

也可以不創建圖標,用命令行啟動
python -m weditor
看到窗口出現如下信息,就是啟動成功了(窗口別關掉了)
C:\Users\dell>python -m weditor
listening on http://192.168.1.125:17310
[I 190717 23:50:55 web:2246] 304 GET / (::1) 7.98ms
[I 190717 23:50:55 web:2246] 304 GET /static/libs/css/buttons.css (::1) 196.47ms
[I 190717 23:50:55 web:2246] 304 GET /static/loading.svg (::1) 5.99ms
[I 190717 23:50:55 web:2246] 304 GET /static/ace/ace.js (::1) 12.97ms
[I 190717 23:50:55 web:2246] 304 GET /static/running.svg (::1) 13.96ms
[I 190717 23:50:55 web:2246] 304 GET /static/ace/mode-python.js (::1) 19.96ms
[I 190717 23:50:55 web:2246] 304 GET /static/libs/fontawesome/css/font-awesome.min.css (::1) 1.99ms
[I 190717 23:50:59 web:2246] 304 GET /api/v1/version (::1) 0.00ms
weditor連接手機
先使用adb連上手機,輸入adb devices查看手機設備號:emulator-5554
C:\Users\dell>adb devices
List of devices attached
adb server version (31) doesn't match this client (40); killing...
* daemon started successfully
emulator-5554 device
在頁面上輸入手機設備號,點Connet按鈕,看到出現一個小草的圖標,就是連接成功了

頁面元素抓取
定位元素
定位元素的方法支持uiautomator的定位方法,也可以支持xpath和坐標定位
- 1.可以查看元素的resourceId屬性
- 2.自動生成xpath定位方法
- 3.支持坐標點擊,根據屏幕的比例
- 4.自動生成uiautomator定位方法參考代碼
- 5.可以勾選強制使用xpath

Coding調試
可以在頁面的右邊調試運行代碼,這點比appium強很多,可以編寫代碼邊調試,還是非常方便的

操作步驟:點勾選高鐵動車后,點查詢按鈕
d(resourceId="com.yipiao:id/checkGaotie").click()
d.xpath('//*[@resource-id="com.yipiao:id/layQueryCard"]/android.widget.FrameLayout[1]').click()
Ctr+Enter運行代碼,會發現手機上已經點擊成功
支持wifi連接
首先保證電腦和手機wifi在一個局域網,電腦上能ping的通手機的ip,輸入手機的ip也可以抓到手機上的頁面元素

