Android - Espresso - 滚动到非列表查看项目

tm1*_*701 10 android android-espresso

是否有滚动到非列表的一般方法查看屏幕上尚未显示的项目?

没有任何预防措施,Espresso将指示"层次结构中没有视图与id匹配.....

我找到了这个答案......这是最好的方法吗?

onView( withId( R.id.button)).perform( scrollTo(), click());
Run Code Online (Sandbox Code Playgroud)

yog*_*arl 20

根据scrollToJavaDoc,要使用您指定的代码(onView( withId( R.id.button)).perform( scrollTo(), click());),前提条件是:"必须是ScrollView的后代"和"必须将可见性设置为View.VISIBLE".如果是这种情况,那就可以了.

如果它在一个AdapterView,那么你应该使用onData.在某些情况下,AdapterViewProtocol如果你AdapterView表现不好,你可能必须实施.

如果它既AdapterView不是a的子项,也不是a的子项ScrollView,那么你必须实现一个自定义ViewAction.

  • “它既不在 AdapterView 中,也不在 ScrollView 的子级中”,例如。NestedScrollView 您可以添加 Barista 依赖项并使用以下方法: scrollTo(R.id.<view_id>); https://github.com/SchibstedSpain/Barista#baristas-assertions-api (2认同)