#案例:定位API
#演示:ID定位法!
#演示:class定位法!
#演示:XPATH定位
from appium import webdriver
import time
# server 启动参数
desired_caps = {}
# 设备信息
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '5.1.1'
desired_caps['deviceName'] = '127.0.0.1:62001'
# 指定要操作某app的某UI
desired_caps['appPackage'] = 'com.android.settings' #设置app
desired_caps['appActivity'] = '.Settings' #主UI
#指定Appium服务器的ip和端口
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
#演示:ID定位
# ele_wlan=driver.find_element_by_id("com.android.settings:id/title")
# ele_wlan.click()
#演示:class定位
# ele_setting=driver.find_element_by_class_name("android.widget.TextView")
# print(ele_setting.text)
#演示:XPATH绝对路径
# ele_wlan=driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.view.View/android.widget.FrameLayout[2]/android.widget.FrameLayout/android.widget.ScrollView/android.widget.LinearLayout/android.widget.LinearLayout[1]/android.view.View/android.widget.FrameLayout[1]/android.widget.LinearLayout/android.widget.LinearLayout/android.widget.LinearLayout/android.widget.RelativeLayout/android.widget.TextView")
# ele_wlan.click()
#演示:xpath的包含关系
# ele_tisiyin=driver.find_element_by_xpath("//android.widget.TextView[contains(@text,'提示音')]")
# ele_tisiyin.click()
#演示:xpath的精确关系
# ele_tisiyin=driver.find_element_by_xpath("//android.widget.TextView[@text='提示音和通知']")
# ele_tisiyin.click()
#演示:xpath多条件并且
ele_tisiyin=driver.find_element_by_xpath("//android.widget.TextView[contains(@text,'提示音') and @resource-id='com.android.settings:id/title']")
ele_tisiyin.click()
time.sleep(5) #休眠5秒
driver.quit()