Appium元素定——xpath定位(交易宝)

Jiaoyibao_capability1_.py
备注:由于交易宝登录时与kyb不同,这是里是跳过了跳过,首页的个人头像,弹出的更新软件包提示,切换密码登录按钮!

from appium import webdriver    #导入appium包
from selenium.common.exceptions import NoSuchElementException

desired_caps={}     #定义一个字典,用来存储capablity的相关信息
desired_caps['platformName']='Android'      #设备平台的名称
desired_caps['deviceName']='127.0.0.1:62025'        #设备名称
desired_caps['platforVersion']='5.1.1'      #设备的版本号


desired_caps['app']=r'C:\Users\bella\Desktop\20180922\jiaoyibao.apk'        #获取包路径
desired_caps['appPackage']='com.konsonsmx.iqdii'        #获取包名
desired_caps['appActivity']='com.konsonsmx.market.module.base.ui.FlashADActivity'   #获取activity启动

desired_caps['noReset']='true'  #模拟用户非首次启动
desired_caps['unicodeKeyboard']="true"  #登录用了中文,代码要做配置
desired_caps['resetKeyboard']="true"    #重置键盘也要设置为true

driver=webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)    #启动服务
driver.implicitly_wait(2)   #启动后等待2秒

def check_skipBtn():
    print("check_skipBtn:检查是否有跳过这个按钮")
    try:
        skipBtn = driver.find_element_by_id('com.konsonsmx.iqdii:id/tvCountDown')
    except NoSuchElementException:
        print('no skipBtn:没有跳过这个按钮')  #当没有这个元素就打印出no cancelBtn
    else:
        skipBtn.click()  #存在这个元素就去点击

def check_loginBtn():
    print("check_loginBtn:检查是否有个人头像这个按钮")
    try:
        loginBtn = driver.find_element_by_id('com.konsonsmx.iqdii:id/ib_title_left')
    except NoSuchElementException:
        print('no loginBtn:没有个人头像这个按钮')  #当没有这个元素就打印出no cancelBtn
    else:
        loginBtn.click()  #存在这个元素就去点击

def check_updateBtn():
    print('check_updatBtn:检查是否有新包的更新')
    try:
        updateBtn=driver.find_element_by_id('com.konsonsmx.iqdii:id/ll_updatesure')
    except NoSuchElementException:
        print('no updatBtn:没有新包的更新这个按钮')
    else:
        updateBtn.click()

def check_passwordBtn():
    print('check_passwordBtn:检查是否有密码登录这个按钮')
    try:
        passwordBtn=driver.find_element_by_id('com.konsonsmx.iqdii:id/tvMMDL')
    except NoSuchElementException:
        print('no passwowrdBtn:没有密码登录这个按钮')
    else:
        passwordBtn.click()

check_skipBtn()
check_loginBtn()
check_updateBtn()
check_passwordBtn()

Jiaoyibao_by_xpath.py

from jiaoyibao.jiaoyibao_capability1 import driver

driver.find_element_by_xpath('//android.widget.EditText[@text="请输入用户名或手机号码登录"]').send_keys('suwen20')#用户名
driver.find_element_by_xpath('//*[@class="android.widget.EditText" and @index="0"]').send_keys('123456') #得到密码,有两个属性class和index
driver.find_element_by_xpath('//android.widget.Button').click()#登录按钮

元素获取
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43264177/article/details/82950109