2

帮助!!!

我想在 Espresso 中测试 android ui,但图像每次都会改变。

listview
 ---FrameLayout
     ---imageview
     ---imageview
 ---FrameLayout
     ---imageview
     ---imageview

我尝试这种方式,但仍然无法点击:

onData(is(instanceOf(ImageView.class)))
                .inAdapterView(withId(R.id.listview))
                .atPosition(3)
                .perform(ViewActions.click());

错误日志:

com.google.android.apps.common.testing.ui.espresso.PerformException: Error performing 'load adapter data' on view 'with id: is <2131296725>'.
    at com.google.android.apps.common.testing.ui.espresso.PerformException$Builder.build(PerformException.java:67)
:DoubanMovie:connectedAndroidTest FAILED
4

2 回答 2

3

我知道我迟到了,但这会对其他人有所帮助。

 onData(anything())
                .inAdapterView(withId(listviewID))
                .atPosition(0)
                .onChildView(withId(childViewID))
                .perform(click());

这将帮助您使用自定义布局单击列表视图中的特定视图

于 2016-09-12T09:11:33.487 回答
-2

尝试这个,

((ImageView)((FrameLayout) listview.getChildAt(position)).getChildAt(position)).performClick();

这可能会帮助你

于 2014-05-19T06:36:35.697 回答