我正在自动化混合Android应用程序。我正在使用谷歌远程工具捕获给定混合应用程序中的对象。
1 我能够在 ' Debugapplication.apk' 中捕获对象,但我无法在 中捕获对象(无法检查) ' productionapplication.apk' 。我想知道的是,我是否需要一个debugapplication.apk来自动使用Appium?
2 我能够在 ' Debugapplication.apk' 中看到[NATIVE_APP,WEBVIEW_com.xxxxx.xxx.xx]但是在 & #39; productionapplication.apk' 只有[NATIVE_APP]。我想知道什么是干扰?它与设备上的Chrome版本有关吗?
以下是我用来将驱动程序上下文更改为' WEBVIEW'的代码行。
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);
}
Java客户端:4.1.2 Selenium Server:2.48.2 Appium Server 1.6.5
答案 0 :(得分:2)
就混合应用程序而言,您将需要一个调试应用程序来使用appium运行自动化测试,但是无论何时您的应用程序都在本机环境中,即使应用程序仍然可以运行应用程序中的本机内容不是调试,但要获取webview检测,即运行非本机内容,您将需要一个调试应用程序。
原生应用:不需要调试应用。
混合应用程序:需要调试应用程序来检测Web元素,本机内容可以双向使用。