我正在查看 tests on Android activities .我想测试 activity lifecycle特别是我的 Activity 结束以开始另一个 Activity (我正在测试第一个 Activity 的结束,而不是第二个 Activity 的开始)。我正在使用 ActivityInstrumentationTestCase2和带有 JUnit 4 测试的 Android Espresso。
我曾试图断言,一旦我触发了一个 Activity 的结束,通过按下屏幕上的一个按钮,该 Activity 就会暂停或不可见,但到目前为止我运气不好。测试 Activity 之间的转换有什么好的做法吗?
最佳答案
基本上您需要添加并注册一个 ActivityMonitor
在您的仪器功能测试中,它将被设置为监听您的第二个 Activity
。一旦触发发生(即在您的测试用例中单击按钮),您将只使用 waitForActivityWithTimeout(int)
获取第二个 Activity
的实例。
如果调用超时,或者结果为空,则您知道您的第二个 Activity
尚未启动。您还可以在 Activity
实例上断言它们是否正在完成/销毁/等等,具体取决于您期望它们发生什么。
关于安卓测试 : asserting an activity transitioned to another,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31459201/