appium 如何定位webview元素
2016-12-21 12:06
591 查看
问题:投资交易时跳转到第三方平台输入交易密码,该页面是一个h5页面,具体页面定位如下图所示:
如何针对这种h5页面进行定位操作呢
解决方法:
1、模拟器中打开h5页面,然后打开chrome浏览器,在地址栏中输入【 chrome://inspect】,界面如下
因没有进行翻墙,所以点击打开页面是空白的,那如何才能看到页面呢,在此偷了一次小巧,从chrome浏览器中将url连接地址粘贴到其他浏览器进行打开,
比如说使用IE浏览器打开,按下F12即可看到源码,然后即可定位(因为h5页面也是一个链接地址,只要知道其连接地址,通过其他浏览器也能将其打开)
2、具体代码如下:
// 页面上的所有context给返回
Set<String> contextSet = driver.getContextHandles();
for(String context : contextSet){
System.out.printf("页面上的context内容为:" + context);
if(context.toLowerCase().contains("webview")){
driver.context(context);
break;
}
}
System.out.printf("页面内容为:" + driver.getPageSource());
driver.findElementById("pass").sendKeys("000000");
driver.findElementById("sub").click();
这样即可实现对webview 进行操作了
如何针对这种h5页面进行定位操作呢
解决方法:
1、模拟器中打开h5页面,然后打开chrome浏览器,在地址栏中输入【 chrome://inspect】,界面如下
因没有进行翻墙,所以点击打开页面是空白的,那如何才能看到页面呢,在此偷了一次小巧,从chrome浏览器中将url连接地址粘贴到其他浏览器进行打开,
比如说使用IE浏览器打开,按下F12即可看到源码,然后即可定位(因为h5页面也是一个链接地址,只要知道其连接地址,通过其他浏览器也能将其打开)
2、具体代码如下:
// 页面上的所有context给返回
Set<String> contextSet = driver.getContextHandles();
for(String context : contextSet){
System.out.printf("页面上的context内容为:" + context);
if(context.toLowerCase().contains("webview")){
driver.context(context);
break;
}
}
System.out.printf("页面内容为:" + driver.getPageSource());
driver.findElementById("pass").sendKeys("000000");
driver.findElementById("sub").click();
这样即可实现对webview 进行操作了
相关文章推荐
- Appium native hybrid webview混合操作及元素定位(14)
- iOS-webview元素如何定位
- selenium webdriver(Appium)如何等待页面元素加载完成
- selenium webdriver(Appium)如何等待页面元素加载完成
- python+selenuim webdriver 页面跳转后如何定位元素
- android+python 原生和webview元素定位
- Appium原生Native界面元素和网页Webview元素切换
- python+appium+ios,遍历真机元素,得到webview
- Appium处理纯web应用元素定位
- webdriver如何定位多层iframe中元素
- 说说watir-webdriver那些事(三)如何定位页面元素
- Web前端面试指导(十四):如何居中一个元素(正常、绝对定位、浮动元素)?
- Appium测试Android混合应用时,第二次切换到WebView时的定位问题
- Android 真机,微信打开 H5,切换到 webview,能通过 webdriver 方法操作页面元素,然后链接到新的 H5 页面后,无法操作元素,appium 服务器没有收到 response,
- 轻松自动化---selenium-webdriver(python) (四)--如何定位一组元素?
- APPIUM处理纯web应用元素定位方法
- App中WebView元素的定位方式
- selenium webdriver(Appium)如何等待页面元素加载完成