calabash-android:执行press_back_button时的INJECT_EVENTS权限(RuntimeError)

Nof*_*ica 2 android automated-tests functional-testing calabash-android

Action 'press_key' unsuccessful: java.lang.SecurityException:
Injecting to another application requires INJECT_EVENTS permission (RuntimeError)
Run Code Online (Sandbox Code Playgroud)

这是我在Calabash press_back_button在步骤定义中遇到命令时收到的错误.通过控制台执行时它可以正常工作,在测试中会产生错误.

有人可以帮忙吗?


操作系统:OS X 10.10

设备:Genymotion v2.3.1 Android v4.4仿真

calabash-android v0.5.5


sax*_*xos 7

我遇到了类似的问题.我不知道这是否可以解决你的问题:

我想触摸一个按钮,但是和你一样有异常.它在控制台中完美运行.

然后我意识到我的测试是将文本输入到文本字段中,并且按钮被虚拟键盘阻挡.我仍然能够查询按钮状态,但是当我想按下它时,我得到了异常,可能是因为它尝试从另一个应用程序(虚拟键盘)与我的应用程序的按钮进行交互.

在按下按钮之前,我必须执行 hide_soft_keyboard

在您的情况下,可能还有其他东西妨碍或阻止您的应用.您还可以sleep 2等待其他操作完成,然后按下按钮.