我需要在Android手机上模拟Espresso中的主页按钮单击。 我尝试过
onView(withId(android.R.id.home))。perform(click());
and onView(withContentDescription(“ Navigate up”))。perform(click());
如某些帖子所建议,但始终无法找到视图。 我是Espresso的新手,不确定如何调试它。谢谢。
答案 0 :(得分:3)
最好使用withContentDescription(R.string.abc_action_bar_up_description)
而不是“向上导航”,但是它无论如何都不会像单击主页按钮那样,它仅使用导航栏的“后退”按钮,因此只有在您拥有导航按钮的情况下,它才有效在您的应用中。
如果要模拟 home 按钮的点击,并且您正在使用UI Automator库,则可以simulate像这样
fun pressHome() {
// Might be a good idea to initialize it somewhere else
val uiDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation())
uiDevice.pressHome()
}
或者,如果您不想或不能使用UI Automator,则可以尝试使用KeyEvent.KEYCODE_HOME
调用Intrstumentation.sendKeyDownUpSync()
。