【发布时间】:2016-07-27 17:55:06
【问题描述】:
我正在使用 appium 测试一个 android 应用程序。 在应用程序的那几个链接重定向到移动版本页面。 我用谷歌搜索但没有得到正确的解决方案,我想知道如何定位元素并在移动版本页面上执行操作。 在此先感谢....!
【问题讨论】:
标签: appium
我正在使用 appium 测试一个 android 应用程序。 在应用程序的那几个链接重定向到移动版本页面。 我用谷歌搜索但没有得到正确的解决方案,我想知道如何定位元素并在移动版本页面上执行操作。 在此先感谢....!
【问题讨论】:
标签: appium
您似乎正在寻找有关自动测试混合应用程序(包括带有移动 Web 内容的 WebViews 的本机应用程序)的信息。
Appium API 参考是获取混合应用自动化基本信息的绝佳资源:http://appium.io/slate/en/master/?java#automating-hybrid-apps
使用 WebView 的主要区别在于,您需要更改 webdriver 的上下文以匹配您希望检查或自动化的 WebView。另请注意,一旦返回检查和自动化实际的原生应用程序,上下文应设置回 NATIVE_APP。
// java
// assuming we have a set of capabilities
driver = new AppiumDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
Set<String> contextNames = driver.getContextHandles();
for (String contextName : contextNames) {
System.out.println(contextNames); //prints out something like NATIVE_APP \n WEBVIEW_1
}
driver.context(contextNames.toArray()[1]); // set context to WEBVIEW_1
//do some web testing
String myText = driver.findElement(By.cssSelector(".green_button")).click();
driver.context("NATIVE_APP");
// do more native testing if we want
driver.quit();
【讨论】: