0

我正在使用Android模拟器Jenkins来运行功能测试(Cucumber)。如果模拟器在开始时不包含,一切正常showcase view

但是如果有一个showcase view我的测试失败,因为应用程序在这个视图后面运行。

截屏

在使用之前,我尝试将keyeventsusing发送adb到模拟器:

adb shell input keyevent KEYCODE_MENU;

但这无济于事。我试过KEYCODE_MENU,KEYCODE_BACK和其他,但他们没有禁用这个视图。

我想这个属性应该在 中作为 a 可用system preferenceAndroid但我找不到它:(

如何showcase view在模拟器中禁用?我可以使用adb.


更新

没有这样的标志可以在模拟器配置文件中设置或在开始时传递给模拟器。

而且我仍然没有一个干净的解决方案,但几乎没有解决方法。这是可以理解的,因为展示视图只是 Launcher 应用程序的一个视图,其逻辑在 Launcher 应用程序内部。

  • 棘手的方法,但通用:准备带有禁用展示的自定义 Android 启动器应用程序(基于AOSP 启动器)并在目标模拟器上预安装(替换默认启动器)。
  • 手动方式,不通用:收集使用的模拟器列表和确定按钮的坐标,并在模拟器启动时发送适当的触摸坐标(如Christopher Orr建议的那样)
4

1 回答 1

1

您应该能够发送点击事件,例如:

adb shell input tap 700 900

这将点击 Nexus 4 上该按钮的大约正确的 x,y 像素坐标。

于 2015-07-13T17:28:12.420 回答