层次结构中未找到匹配的视图:可从 class 分配:class android.widget.AdapterView

No views in hierarchy found matching: is assignable from class: class android.widget.AdapterView

我正在尝试使用 onData 获取回收视图,但我遇到了这个错误:

No views in hierarchy found matching: is assignable from class: class android.widget.AdapterView

代码就是这样:

onData(allOf(isAssignableFrom(RecyclerView.class), withId(R.id.ce_musers_list)))
.check(matches(withEffectiveVisibility(ViewMatchers.Visibility.VISIBLE)));

我的适配器扩展了 RecyclerView.Adapter,因为它应该用于 RecycleView,但是,接缝匹配器正在寻找一个简单的适配器。 这是我第一次使用 espress,所以我可能在一些基本的事情上失败了。

我的 Espresso 版本是 3.0.0

onData() 仅与 AdapterView 及其子 class 一起使用,RecyclerView 不属于。

espresso 附带了一个助手 class:RecyclerViewActions 可用于对 viewholder 的 recyclerview 和 itemview 执行各种操作。

例如,如果您想做出断言 - 您可以滚动到 itemview,然后使用常规 onView()... 检查该 viewholder 的详细信息。

    val recyclerView = onView(
        allOf(
            withId(R.id.myRecyclerView),
            childAtPosition(
                withClassName(`is`("androidx.constraintlayout.widget.ConstraintLayout")),
                0
            )
        )
    )
    recyclerView.perform(actionOnItemAtPosition<ViewHolder>(1, click()))