繁体   English   中英

Espresso Instrumented 测试,层次结构中找不到与 RecycleView 匹配的视图

[英]Espresso Instrumented Test, No views in hierarchy found matching RecycleView

我在底部导航中有 3 个项目:

  1. 电影
  2. 电视节目
  3. 收藏夹(包含 2 个项目的选项卡布局,默认选项卡(“电影”)和第二个选项卡(“电视节目”))

在默认选项卡(最喜欢的电影)上是成功的。

onView(withId(R.id.nav_favorite)).perform(click())
onView(allOf(withId(R.id.rv_favorite_film), isDisplayed())).check(matches(isDisplayed())) //SUCCESS

测试时我在最喜欢的项目 - > 第二个选项卡电视节目中有问题:

onView(withId(R.id.nav_favorite)).perform(click())
onView(allOf(withText("Tv Show"), isDescendantOfA(withId(R.id.tabs)))).perform(click())
onView(allOf(withId(R.id.rv_favorite_tvshow), isDisplayed())).check(matches(isDisplayed())) //ERROR

如何解决? 谢谢

我认为您正在对TextView performing click操作,这不是附加了onClickListenerView

TabLayout ,您有一个TabViews的层次结构,其中嵌套了TextViews 具有onClickListener的东西不是TextView (匹配allOf(withText("Tv Show"), isDescendantOfA(withId(R.id.tabs))) )而是TabView

因此,您应该在具有withText("Tv Show")TabViewperform(click()) )。

我不记得 Espresso 的确切语法,但如果你尝试使用我的 Cortado 库(),它应该是:

Cortado.onView().isAssignableFrom(TabView::class.java).and().hasDescendant(withText("Tv Show")).perform().click()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM