我能得到這個工作做了以下內容:
Matcher<RecyclerView.ViewHolder> matcher = CustomMatcher.withTitle("A");
onView((withId(R.id.recycler_view))).perform(scrollToHolder(matcher), actionOnHolderItem(matcher, click()));
其中CustomMatcher.withTitle
是:
public static Matcher<RecyclerView.ViewHolder> withTitle(final String title)
{
return new BoundedMatcher<RecyclerView.ViewHolder, CustomListAdapter.ItemViewHolder>(CustomListAdapter.ItemViewHolder.class)
{
@Override
protected boolean matchesSafely(CustomListAdapter.ItemViewHolder item)
{
return item.mTitleView.getText().toString().equalsIgnoreCase(title);
}
@Override
public void describeTo(Description description)
{
description.appendText("view holder with title: " + title);
}
};
}
不隨機的物品,或者說,在可預見的方式,然後隨機選擇。你可以在你的隨機生成器中每次使用相同的種子,以確保這些物品是你尋找它們的地方。 – njzk2
假設項目的順序不能由開發者控制。在一個理想的世界裏,是的,一個訂單(或者你建議的可預見的訂單)是理想的。對於這種情況是不可能的。 – Zach