在espresso测试时确定片段更改

时间:2014-12-09 00:57:09

标签: android android-fragments android-espresso

我在android中测试我的应用程序,由1个主要活动和我们导航的多个片段组成。

对于我的测试,我使用espresso,点击特定按钮后,我想检查当前片段是否已更改(带按钮的部分是否正常)。

那么,我怎样才能在浓缩咖啡中检查片段是否仍然与点击按钮之前相同?

1 个答案:

答案 0 :(得分:13)

如果你真的想这样做,你可以做到

FragmentManager fragmentManager = getActivity().getFragmentManager()

并从fragmentManager获取有关Backstack的信息。如果您的片段有标记,则可以声明findFragmentByTag(tag)返回非空的内容。

但是,对视图层次结构进行断言通常会更好。这就是Espresso的设计目标,而且它更符合黑盒测试的精神。

所以我建议找一些新片段的区别特征,例如页面标题(如果有的话),并断言使用通常的Espresso方法存在该视图,例如

onView(withText("Page Two Title")).check(matches(isDisplayed()));