【问题标题】:Espresso can't find a View inside a custom view classEspresso 在自定义视图类中找不到视图
【发布时间】:2018-09-18 22:31:58
【问题描述】:

我有一个自定义的Viewpublic class Foo extends RelativeLayout{...},其中有一个EditTextFoo 类有一个扩展的 XML 布局,它的 EditText 也有一个 id,但它无法找到 EditText

我正在使用这个 Espresso 代码:

onView(allOf(withId(R.id.edittext), withParent(withId(R.id.name_container)))).check(matches(isDisplayed())).perform(click());

我得到的错误信息是:

android.support.test.espresso.NoMatchingViewException: 没有视图 层次结构找到匹配:(id:dk.aura.app.staging:id/edittext 并且有父匹配:带有id: dk.aura.app.staging:id/name_container)

【问题讨论】:

    标签: android android-espresso


    【解决方案1】:

    通过坚持,我找到了自己问题的答案。

    似乎在另一个视图(嵌套视图)中访问视图时,您必须检查它是否为isDescendantOfA() 而不是withParent()

    所以这是正确的方法:onView(allOf(withId(R.id.edittext), isDescendantOfA(withId(R.id.name_container)))).check(matches(isDisplayed()));

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多