appium定位webview元素,appium 定位元素
摘要:本文主要介绍Appium自动测试实现H5页面元素定位,通过实例代码详细介绍,具有一定的参考价值。感兴趣的朋友可以参考一下。
00-1010 H5元素定位准备介绍;Webview调试模式是否打开;检查以获取H5页面地址和chrom版本信息;实际案例
目录
在现在的手机App中,由于开发效率和需求变化频繁,往往会有相关的运营需求,经常需要更新。如果所有的手机app都是原生开发,成本相对较高,然后就出现了嵌入式H5页面。那么如何定位这些H5页面元素呢?
对于这个H5场景,不能直接使用上述方法定位元素,因为之前的方法都是基于Andriod原生控件,而网页是单独的B/S架构,两者运行环境不同,需要切换上下文,然后定位H5页面元素。
上下文:程序中的上下文可以理解为当前对象在程序中所处的环境。比如前面提到的App接口属于活动类型,也就是Android接口环境,但是在访问嵌入式网页的时候,属于另一种环境(网页环境),两者是不同的环境。
简介
H5元素定位准备工作
在自动化脚本中,输入相应的H5页面并打印出当前上下文。如果一直显示为Natvie App,则webview没有打开。
打开app对应的h5页面,查看chrome://inspect/#devices的地址中是否显示对应的webview。如果没有,则当前没有打开调试模式。
打开模式:
调用WebView类中的静态方法setWebContentsDebuggingEnabled需要App开发者的操作。
如果(构建。版本。SDK_INT=Build。版本代码。KITKAT) {
webview . setwebcontentsdebugngenabled(true);
Webview 调试模式是否开启检查
这个测试应用程序是主题网络应用程序。
与手机电脑连接,打开USB调试模式,通过adb设备,可以看到这个设备打开手机(模拟器)上的应用,进入H5页面。
在电脑端chrome浏览器的地址栏输入chrome://inspect/#devices进入调试模式。
显示的H5页面地址
地址:https://m.zxxk.com/activity/appnewusergift/
Chrom浏览器版本:75.0.3770.143
下载相应的chrome驱动程序
打开Chromedriver下载地址下载相应版本。
http://chromedriver.storage.googleapis.com/index.html?路径=75.0.3770.140/
将下载的驱动放入一个路径,例如:c : users administrator desktop chrome driver _ win32 contexts context operation。
获取所有上下文
驱动程序.上下文
获取当前上下文
驱动程序.上下文
切换上下文
方法1:
driver . switch _ to . context( WEBVIEW _ com . xkw . client )
方法二:
上下文=驱动程序.上下文
driver.switch_to.context(上下文[-1])
削减应用
driver . switch _ to . context( NATIVE _ APP )
拿到H5页面地址和chrom版本信息
实战场景
启动学科网APP应用,在发现页面点击现金券,在活动登陆页面下载优惠券领取活动,点击按钮领取大礼包,在登录注册页面点击左上角关闭按钮。
# _*_ coding:utf-8 _*_
导入时间
从应用程序导入web驱动程序
从appium . web driver.common . appiumby导入appium by
desired_caps={
平台名称 : Android ,
平台版本 : 7.1.2 ,
udid: 127.0.0,2001 ,
app package : com . xkw . client ,
app activity : com . zxxk . page . main . launch activity ,
noReset: True,
automation name : ui automator 2 ,
chrome options : { W3C : False },
chromedriverExecutable : r c : Users Administrator Desktop chrome driver _ win32 chrome driver . exe
}
driver=webdriver。远程( http://127.0.0.1:4723/wd/hub ,desired_caps)
driver . implicit _ wait(30)
#点击活动门户
driver.find_element(AppiumBy。ID, com . xkw . client : ID/iv _ horizontal _ pic )。单击()
时间.睡眠(5)
#获取上下文
上下文=驱动程序.上下文
#切换到网络视图
driver.switch_to.context(上下文[-1])
driver.find_element(AppiumBy。ID, getgifts )。单击()
时间.睡眠(1)
#切换到本机
driver . switch _ to . context( NATIVE _ APP )
driver.find_element(AppiumBy。ID, com . xkw . client : ID/common _ toolbar _ back _ img )。单击()
以上就是这篇关于Appium自动化测试实现H5页面元素定位的文章。有关Appium H5页面元素定位的更多信息,请搜索热门IT软件开发工作室之前的文章或继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。