在进行Espresso测试时确定片段变化

12

我正在测试我的Android应用程序,它由1个主活动和多个嵌套的片段组成,在其中我们进行导航。

为了进行测试,我使用espresso,在单击特定按钮后,我想检查当前片段是否已更改(按钮部分没有问题)。

那么,在espresso中,我如何检查片段是否与按钮点击之前相同?

1个回答

15

如果你真的想做这件事,你就能做到。

FragmentManager fragmentManager = getActivity().getFragmentManager()

您需要从fragmentManager获取有关后退堆栈的信息。如果您的片段具有标记,则可以断言findFragmentByTag(tag)返回非空内容。

但通常最好针对视图层次结构做出断言。这就是 Espresso 的设计初衷,也更符合黑盒测试的精神。

因此,我建议找到新片段的某些独特特征,例如页面标题(如果有),并使用通常的 Espresso 方法来断言该视图存在,例如:

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

顺便问一下,我们如何使用isDisplayed()? - Gaétan Séchaud

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接