安卓测试。使用 Espresso 的一系列点击

标签 android testing

我是 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/

相关文章:

android - Firebase 依赖项 : "WARNING: API ' variant. getMergeResources( )' is obsolete and has been replaced"

android - 在 Kotlin 的 Injekt 库中,如何创建本地作用域,例如为每个 Android Activity 创建本地作用域?

java - 在 thenThrow 中将模拟类作为参数传递时出现 UnfinishedStubbingException

javascript - 不再支持 JSpec?

c# webforms 测试策略

javascript - javascript测试中的异步断言

android - 为什么这个安卓设备会放大文字?

android - 从 RoundedBitmapDrawable 转换为 BitmapDrawable

java - Android 将字符串转换为日期会更改整个日期时间

Javascript - 测试 DOM 操作