我对Espresso非常陌生,我觉得这是可行的,但我不确定具体如何。
我知道您可以使用以下方法单击RecyclerView行:
onView(withId(viewId)).perform(RecyclerViewActions.actionOnItemAtPosition(position, click()));
我遇到的问题是,我正在测试的代码段中在运行时添加了RecyclerView。如何获取viewId传递给此函数?还是我还能如何使其工作?
如果RecyclerView没有ID,您仍然可以使用其他匹配器:
// Any RecyclerView
onView(isAssignableFrom(RecyclerView.class)).perform(...);
// RecyclerView that is a child/descendant of a container view
onView(allOf(isAssignableFrom(RecyclerView.class), isDescendantOfA(withId(container_id)))).perform(...);