Appium元素定位(通过id定位)

Appium元素定位的方式有以下几种:

  1. id
  2. name
  3. class
  4. 相对定位
  5. Xpath定位
  6. H5页面元素定位
  7. Uiautomator定位

常用元素定位语法(python):

find_element_by_id(‘XXXX’)

find_element_by_class_name(‘XXXX’)

find_element_by_xpath(“”)

元素操作:

点击find_element_by_ id(‘XXXX’).click()

输入文本find_element_by_ id(‘XXXX’).send_keys ()

等待延时:driver.implicitly_wait(5)  #以秒为单位

结合python的完整脚本:看正文脚本模块driver.find_element_by_id('com.mydream.wifi:id/tvShare').click()

Tips:运行脚本的几个步骤

  1. 连接设备:使用adb connect连接设备
  2. 开启appium服务:双击appium的应用图标—点击start server 按钮
  3. 运行脚本:打开pycharm—打开对应的脚本—快捷键ctrl+shift+F10

脚本:

#!urs/bin/python
#!_*_ coding:UTF-8 _*_

from appium import webdriver
desired_caps={}
desired_caps[
'platformName']='Android'
desired_caps['platformVersion']='4.4.2'
desired_caps['deviceName']='127.0.0.1:62001'
desired_caps['app']=r'C:\\Users\\JMC\\Desktop\\Study\\wifibanlv.apk'  #apk的路径
desired_caps['packageName']='包名'
desired_caps['appActivity']='apk对应的activity'
driver=webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)
driver.find_element_by_id(
'com.mydream.wifi:id/tvShare').click()  #点击头条新闻
driver.implicitly_wait(5#以秒为单位
driver.find_element_by_class_name('android.widget.ImageButton').click()  #点击头条新闻页面的返回按钮
driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.TabHost/android.widget.LinearLayout/android.widget.TabWidget/android.widget.RelativeLayout[3]"
).click()  #点击我页面tab
driver.implicitly_wait(5#以秒为单位
driver.find_element_by_id('com.mydream.wifi:id/riv_head').click() #点击个人头像,打开等登陆页面
driver.implicitly_wait(10#以秒为单位
driver.find_element_by_id('com.mydream.wifi:id/title_third_login_button').click()  #点击更多按钮
driver.find_element_by_id('com.mydream.wifi:id/cacetMobile').send_keys("18059869253") #输入账号
driver.implicitly_wait(5#以秒为单位
driver.find_element_by_id('com.mydream.wifi:id/cacetPwd').send_keys("123456"#输入密码
driver.implicitly_wait(5#以秒为单位
driver.find_element_by_id('com.mydream.wifi:id/cbtnLogin').click()  #点击登陆按钮

 

猜你喜欢

转载自blog.csdn.net/teamo_mc/article/details/81171400