Android使用Espresso测试ZoomControls时无法获取控件ID的解决方法
Android Espresso测试ZoomControls的ID获取问题及解决方法
问题场景
使用Espresso测试Android应用中的ZoomControls组件时,尝试通过常规ID调用方式:
onView(withId(R.id.zoomIn)).perform(click());
无法获取到zoomIn/zoomOut控件的ID,尽管这些控件在Layout Component Tree中是可见的。
无效尝试
曾尝试通过系统Resources获取ID,但未生效:
Resources res = Resources.getSystem(); int id = res.getIdentifier("btn_zoom_down", "drawable", "android");
有效解决方案
通过以下代码成功获取到ZoomControls的控件ID并完成点击操作:
Resources res = Resources.getSystem(); int id = res.getIdentifier("@id/zoomOut", "drawable", "android"); onView(withId(id)).perform(click());
内容的提问来源于stack exchange,提问作者EgeronimoL
相关产品推荐
相关产品推荐

