前言? ?
環(huán)境搭建好了球凰,下一步元素定位艰争,元素定位本篇主要介紹如何使用uiautomatorviewer戚炫,通過(guò)定位到頁(yè)面上的元素仁堪,然后進(jìn)行相應(yīng)的點(diǎn)擊等操作.?
uiautomatorviewer是android-sdk自帶的一個(gè)元素定位工具,非常簡(jiǎn)單好用打却,使用uiautomatorviewer杉适,你可以檢查一個(gè)應(yīng)用的UI來(lái)查看應(yīng)用的布局和組件以及相關(guān)的屬性。
一柳击、啟動(dòng)uiautomatorviewer.bat
? ? 1.打開(kāi)目錄D:\androidsdk\android-sdk-windows\tools
1472105236126324.png850x502 53 KB
? ? 2.雙擊啟動(dòng)猿推,啟動(dòng)之后出現(xiàn)如下界面
? ? 3如果不喜歡雙擊啟動(dòng)的話(huà),也可以在cmd里面通過(guò)指令啟動(dòng)
先cd到tools目錄下捌肴,然后輸入uiautomatorviewer.bat回車(chē)后啟動(dòng)服務(wù)
二蹬叭、連接手機(jī)
? ? 1.cmd打開(kāi)輸入adb devices,確認(rèn)手機(jī)已連上
? ? 2.打開(kāi)手機(jī)淘寶頁(yè)面,讓屏幕處于點(diǎn)亮狀態(tài)
? ? 3.點(diǎn)左上角安卓機(jī)器人按鈕Devices Screenshot按鈕刷新頁(yè)面
三状知、定位元素
? ? 1.移動(dòng)鼠標(biāo)到需要定位的元素上秽五,如搜索輸入框
? ?2.右下角可以看到元素對(duì)應(yīng)的屬性
text:搭配新寵不能缺
resource-id:com.taobao.taobao:id/home_searchedit
class:android.widget.EditText
四、點(diǎn)搜索框
? ? 1.前面一騙啟動(dòng)app后饥悴,休眠五秒坦喘,等待頁(yè)面加載完成
? ? 2.通過(guò)id來(lái)定位到搜索框盲再,然后點(diǎn)擊
五、最終代碼如下
# coding=utf-8
from appium import webdriver
import time
desired_caps = {
? ? ? ? ? ? ? ? 'platformName': 'Android',
? ? ? ? ? ? ? ? 'deviceName': '30d4e606',
? ? ? ? ? ? ? ? 'platformVersion': '5.0',
? ? ? ? ? ? ? ? 'appPackage': 'com.taobao.taobao',
? ? ? ? ? ? ? ? 'appActivity': 'com.taobao.tao.welcome.Welcome',
? ? ? ? ? ? ? ? }
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
# 休眠五秒等待頁(yè)面加載完成
time.sleep(5)
driver.find_element_by_id("com.taobao.taobao:id/home_searchedit").click()
六瓣铣、元素定位
(此處敲黑板答朋,做筆記!E骰ΑB逃场)
? ? 1.appium的webdriver提供了11種元素定位方法,在selenium的基礎(chǔ)上擴(kuò)展了三個(gè)腐晾,可以在pycharm里面輸入driver.find_element_by然后會(huì)自動(dòng)匹配出來(lái)
? ?2.多的三種如下叉弦,在后面的會(huì)詳細(xì)介紹
driver.find_element_by_accessibility_id()
driver.find_element_by_android_uiautomator()
driver.find_element_by_ios_uiautomation()
(第三個(gè)是ios的可以暫時(shí)不用管)
uiautomatorviewer是android sdk自帶的,下篇介紹appium自帶個(gè)元素定位工具:Inspector.