【发布时间】:2020-01-20 11:30:09
【问题描述】:
我需要在 Hybrid 应用程序中自动执行 Web 视图。本机部分自动化进展顺利。在本机视图中单击其中一个按钮后,应用程序将进一步导航到 Chrome 浏览器并打开 Web 视图。现在,问题是我无法使用 driver.getContextHandles() 在字符串集中获取“WEBVIEW”。即使在导航到 webview 之后,我也只能获得“NATIVEAPP”的价值。请让我知道我哪里出错了,或者有其他相同的方法。
尝试使用 driver.getContextHandles() 来获取所有上下文,然后运行“for loop”将驱动程序设置为 WEBVIEW 上下文以在 webview 上执行进一步的操作。
//Below code is after clicking on the button on native view which
//navigate to the web view in the chrome browser
Set<String> contextNames = driver.getContextHandles();
System.out.println(contextNames);
for (String conName : contextNames) {
System.out.println(conName);
if (conName.contains("WEBVIEW"))
{
driver.context(conName);
}
}
//clicking action in the webview in browser
driver.findElement(By.xpath(XYZ)).click();
我希望 driver.getContextHandles() 值为:NATIVEAPP,WEBVIEW。但我只得到 NATIVEAPP 作为输出。
【问题讨论】:
-
此权限是否在应用配置的 setWebContentsDebuggingEnabled 中启用?
-
需要与开发团队确认。
标签: java appium appium-android