调试应用程序是否必须使用Appium进行自动化?

时间:2017-07-11 19:04:44

标签: android selenium android-webview appium

我正在自动化混合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

1 个答案:

答案 0 :(得分:2)

就混合应用程序而言,您将需要一个调试应用程序来使用appium运行自动化测试,但是无论何时您的应用程序都在本机环境中,即使应用程序仍然可以运行应用程序中的本机内容不是调试,但要获取webview检测,即运行非本机内容,您将需要一个调试应用程序。

原生应用:不需要调试应用。

混合应用程序:需要调试应用程序来检测Web元素,本机内容可以双向使用。