appium Hybrid App - 无法导航到WebView

时间:2015-02-18 12:09:14

标签: appium

我是Appium的新手,尝试使用Phonegap开发的Hybrid应用程序。 我面临的问题是无法导航到WebView。直到FrameLayout我能够驾驶但是之后我不能。请指导我。请找到我使用的以下代码: - 环境: Appium版本:1.3.4.1 使用的设备:S5 Android版本:4.4.2 java客户端:2.1

File appDir = new File("Path");
File app = new File(appDir, ".apk"); 
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities = DesiredCapabilities.android();
capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability("deviceName","S5");
capabilities.setCapability("platformVersion", "4.4.2");
capabilities.setCapability("app", app.getAbsolutePath());
capabilities.setCapability("app-package", "packagename"); 
capabilities.setCapability("app-activity", "activity");  
drivers = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),  capabilities);
Set contextNames = drivers.getContextHandles();
for (String contextName : contextNames) {
System.out.println(contextNames); //from the drivers.getContextHandles i am getting only "NATIVE_APP"
}
drivers.context(contextNames.toArray()[0].toString()); 
               drivers.findElement(By.xpath("//android.widget.FrameLayout/android.widget.Linear   Layout/android.widget.FrameLayout/android.widget.LinearLayout"));
drivers.findElement(By.className("android.webkit.WebView"))

 //From here i couldn't able to navigate
drivers.findElement(By.xpath("//android.view.View[@index='0']"));

i have tried with drivers.switchto.window("NATIVE_APP") but haven't worked. 
please guide me.?

1 个答案:

答案 0 :(得分:1)

如果要检查元素的属性,可以在设备/模拟器上打开应用程序屏幕并打开新的Chrome浏览器并在URL框中键入chrome:// inspect。 这应该显示设备附加,webview和Inspect按钮,单击它将打开一个新窗口,其中包含相关屏幕的页面源。

如果您想通过脚本使用webview中的元素,切换到webview上下文会有所帮助。

driver.context(" WEBVIEW_webviewname&#34); WEBVIEW_webviewname - 提供给移动应用的webview的名称

谢谢,
舒亚塔