如何在混合应用程序中查找Web视图元素

时间:2018-01-17 10:16:59

标签: android webview appium

我正在测试混合应用。我的appium版本是v1.7.2,我使用Android模拟器与Android版本7.1.1和API级别25.我需要切换到Web视图,我使用以下代码:

System.out.println(driver.getContext());
System.out.println(driver.getContextHandles());
Set<String> con=driver.getContextHandles();

for(String c:con) {
   System.out.println("Available context: "+c);

   if(c.contains("WEBVIEW")) {
      driver.context(c);
      Thread.sleep(15000);
      break;
   }
}

System.out.println("After switching: "+driver.getContext());

但是这段代码无效,我收到以下错误

io.appium.java_client.NoSuchContextException: An unknown server-side error occurred 
while processing the command. Original error: Failed to start Chromedriver session: 
A new session could not be created. (Original error: session not created exception: 
Chrome version must be >= 60.0.3112.0

我尝试使用不同版本的chromedriver,但它仍无效。

1 个答案:

答案 0 :(得分:0)

在模拟器上有known trouble

为什么会发生:Chromedriver的每次更新都会在Chrome支持的最低版本中加上增加 =&gt;旧设备通常无法使用捆绑版本自动化。

如何修复: 根据{{​​3}}页面,您必须使用chromedriver版本2.33 +:

  • 使用链接this
  • 下载文件
  • 使用命令启动appium服务器:

appium --chromedriver-executable /path/to/my/chromedriver

  • 再次开始测试