Espresso - 如何匹配 ActionBar 的可见性?
Posted
技术标签:
【中文标题】Espresso - 如何匹配 ActionBar 的可见性?【英文标题】:Espresso - How to match ActionBar visibility? 【发布时间】:2014-11-25 16:18:19 【问题描述】:我正在尝试进行 Espresso 测试以检查操作栏是否隐藏/显示,但我似乎无法弄清楚如何将其与 Espresso.onView(...) 匹配。 Afaik 它没有 id,对吧?
非常感谢
【问题讨论】:
【参考方案1】:操作栏视图有一个 ID,但它没有公开。我们可以通过getIdentifier
获得它:
Resources resources = getInstrumentation().getTargetContext().getResources();
int actionBarId = resources.getIdentifier("action_bar_container", "id", "android");
onView(withId(actionBarId)).check(matches(isDisplayed()));
代码改编自related answer。我认为这会起作用,但我还没有测试过。
【讨论】:
当我将android
更改为getPackageName()
时,此代码对我有效。以上是关于Espresso - 如何匹配 ActionBar 的可见性?的主要内容,如果未能解决你的问题,请参考以下文章
xml Android示例,说明如何向ActionBar添加自定义徽标并确保最佳匹配启动Window。
Kotlin 中的 Espresso 正则表达式匹配器 [重复]
Android Espresso - 嵌套父母的组合视图匹配器