您的位置:首页 > 移动开发

Appium 在 webview中找不到页面的问题解决

2017-02-04 09:35 344 查看
在要测的app中点 设置 要进入到 退出 页面,但是点过设置之后打印出的pagesource还是停留在设置页面中,在谷歌浏览器中用inspect查看确实是进入了 退出 页面。在网上查阅原来是 我们之前只是转成了webview,在 webview 里设置那个页面是个window,点设置到退出那又是个window,这些window都是层叠的,取最上面一个window就是最新打开的

以下文章转自:https://testerhome.com/topics/5137

我在使用appium测试混合的android APP时,在遇到web view后

driver.content(“WEBVIEW”);

切换到web view

然后通过

driver.getURL();

获取到当前的URL 是 **/my.html

这时是可以通过web driver的方式获取到控件的

后来点击该页面的一个按钮,比如设置按钮切换到设置页面 */setting.html,该页面也是webview

这时再去获取URL 还是 */my.html

URL没有变,所有不能获取到该页面元素

我试过多种方法

首先,webview确实只有一个

1.我就先切换成NATIVE 再切换成 web view 再查看url------失败

2.通过

driver.get(url);

方式手动切换URL ------------失败

各位大神有没有遇到这个问题啊,求解

正如一楼所说,在切换context后还要切换Windows,以下是我的解决办法:

public void switchWindows(){
try{
Set<String> windows=driver.getWindowHandles();
driver.switchTo().window((String) windows.toArray()[windows.size()-1]);
}catch (Exception e){
log.warn("Try to switch windows fails");
log.warn(e.getMessage());
}
}


通过这个方法来切换至最前面的Windows。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐