Android测试:声明一项活动转变为另一项活动

时间:2015-07-16 16:00:13

标签: android testing android-activity junit activity-lifecycle

我在看tests on Android activities。我想测试activity lifecycle,特别是我的活动结束以开始另一个活动(我正在测试第一个活动的结束,而不是第二个活动的开始)。我正在使用ActivityInstrumentationTestCase2和Android Espresso与JUnit 4测试。

我试图断言,一旦我触发活动结束,通过按下屏幕上的按钮,活动暂停或不可见但我到目前为止运气不佳。是否有任何良好的做法来测试活动之间的转换?

1 个答案:

答案 0 :(得分:1)

你应该看看https://developer.android.com/training/activity-testing/activity-functional-testing.html#activitymonitor

基本上,您需要在已检测的功能测试中添加并注册ActivityMonitor,该测试将设置为侦听您的第二个Activity。触发发生后(即在测试用例中点击按钮),您只需使用waitForActivityWithTimeout(int)获取第二个Activity的实例。

如果通话超时,或结果为空,则表示您的第二个Activity尚未启动。您还可以在Activity个实例上断言它们是否正在完成/销毁/等等,具体取决于您期望与它们发生的事情。