我是 Android UI 测试的新手。 例如,我的应用程序使用了很多 fragment : 单击按钮会将当前 fragment 替换为另一个 fragment 。 当我这样做时:
onView(withId(R.id.some_button)).perform(click());
expresso 框架测试点击那个按钮。 但是 - espresso 按下按钮然后回滚,因此按钮被按下 -> 新 fragment 正在替换当前 fragment -> 然后它回滚到前一个 fragment 。
问题:
如何在不回滚的情况下执行一系列点击,以便我可以点击出现在下一个 fragment 上的新按钮。 抱歉,如果这个问题很愚蠢,我需要了解浓缩咖啡的工作原理。 谢谢大家。
最佳答案
于是我发现它比我想象的要简单。 您只需执行一个操作,例如:
onView(withId(R.id.some_id_to_start_a_fragment)).perform(click());
然后,如果您不执行任何其他操作,它将回滚,但您可以继续单击您认为与该 fragment 一起出现在屏幕上的 View 。
onView(withId(R.id.some_view_from_the_fragment)).perform(click());
它会连续执行这个 Action ,所以你可以连续做很多 Action 。 也许对某些人会有帮助。
关于安卓测试。使用 Espresso 的一系列点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31888669/