appium h5自动化

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/dengachao/article/details/100151642

一、测试环境

    测试设备:逍遥模拟器 Android 5.1.1 /Chrome 68.0
PC系统环境: Win10 64bit /Chrome 68.0
测试app: dr.fone3.2.0.apk
H5页面地址:https://drfone.wondershare.com/backup.html

二、测试场景
场景一:base脚本里的desired_caps['noReset'] = 'False'

1 启动dr.fone app 进入backup H5页面中的输入邮箱并点击提交,然后返回

三、参考脚本

#coding=utf-8
from appium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.support.ui import WebDriverWait

desired_caps={}
desired_caps['platformName'] = 'Android'
desired_caps['deviceName'] = '127.0.0.1:21513'
desired_caps['platforVersion'] = '5.1.1'

# desired_caps['deviceName'] = 'HUAWEI Mate 20'
# desired_caps['platforVersion'] = '9'
# desired_caps['udid'] = '66J0218C28008638'


desired_caps['app'] = r'D:\download\dr.fone3.2.0.apk'
desired_caps['appPackage'] = 'com.wondershare.drfone'
desired_caps['appActivity'] = 'com.wondershare.drfone.ui.activity.WelcomeActivity'
# desired_caps['noReset'] = 'False'
# #设置之后会有Appium的输入法守护来执行输入操作
# desired_caps['unicodeKeyboard']="True"
# desired_caps['resetKeyboard']="True"

driver = webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)
driver.implicitly_wait(8)

print('点击 BackupBtoon')
driver.find_element_by_id("com.wondershare.drfone:id/btnBackup").click()
#等待next按钮出现(显示等待)
WebDriverWait(driver,19).until(lambda x:x.find_element_by_id('com.wondershare.drfone:id/btnRecoverData'))
print("点击 next按钮")
driver.find_element_by_id('com.wondershare.drfone:id/btnRecoverData').click()
print("打印contexts")
WebDriverWait(driver,19).until(lambda x:x.find_element_by_class_name('android.webkit.WebView'))
contexts = driver.contexts
print(contexts)

#需要安卓5以上
print("切换到conetexts")
driver.switch_to.context('WEBVIEW_com.wondershare.drfone')
print("输入email")
driver.find_element_by_id("email").send_keys("[email protected]")
print("点击提交按钮")
driver.find_element_by_class_name("btn_send").click()
#切换context,返回
driver.switch_to.context('NATIVE_APP')
driver.find_element_by_class_name("android.widget.ImageButton").click()



注意驱动不动会报错:

猜你喜欢

转载自blog.csdn.net/dengachao/article/details/100151642