小编Aar*_*ron的帖子

Android Espresso - 检查 RecyclerView 中是否不存在文本

我有检查带有文本“产品”的行是否存在于RecyclerView以下代码中:

onView(withId(R.id.rv_list)).perform(scrollTo(hasDescendant(withText("Product"))));
onView(withItemText("Product")).check(matches(isDisplayed()));

public static Matcher<View> withItemText(final String itemText) {
    checkArgument(!TextUtils.isEmpty(itemText), "itemText cannot be null or empty");
    return new TypeSafeMatcher<View>() {
        @Override
        public boolean matchesSafely(View item) {
            return allOf(
                    isDescendantOfA(isAssignableFrom(RecyclerView.class)),
                    withText(itemText)).matches(item);
        }
        @Override
        public void describeTo(Description description) {
            description.appendText("is isDescendantOfA RV with text " + itemText);
        }
    };
}
Run Code Online (Sandbox Code Playgroud)

如何检查所有列表中是否没有包含提供文本的行RecylerView

android android-espresso android-recyclerview

2
推荐指数
1
解决办法
2595
查看次数