如果元素存在,则返回Boolean

时间:2015-08-21 23:47:49

标签: android android-espresso

我需要在Espresso中实现这样的事情:

if (!onView(withId(R.id.someID)).check(Exist()){
// push button
} else {
 // select check box
}

我已经查看了这篇文章:Espresso: return boolean if view exists并想了解如何实现ValeraZakharov的第二个答案,因为我试图实现自己,但收效甚微。

1 个答案:

答案 0 :(得分:1)

示例实现可以是

public void testSomthing() {
  if (!doesViewExist(R.id.someID)) {
    // push button
  } else {
    // select check box
  }
}

public boolean doesViewExist(int id) {
  try {
    onView(withId(id)).check(matches(isDisplayed()));
    return true;
  } catch (NoMatchingViewException e) {
    return false;
  }
}