1

我的 Robotium 测试有一些问题。我有 3 个测试类,每个类都有大约 2 到 3 个方法。它们都在 Android 生命周期中测试不同的活动。我发现的问题是,当测试 A 按下 A 中的按钮时,会为测试通过然后完成的下一个活动调用意图。然后测试 B 尝试开始一项活动。然后我注意到来自测试 A 的 Activity 仍然存在。我尝试使用它来解决问题。这个想法是设备会等到活动空闲,然后我将结束任何不活动的活动。然后我会结束所有打开并离开的。

 getInstrumentation().waitForIdleSync();
 solo.finishInactiveActivities();
 solo.finishOpenedActivities();

我不确定这是否是 100% 解决此问题的最佳方法。我注意到它在 80% 的时间里都有效,但我仍然有一些泄漏。

4

1 回答 1

1

我通过使用 solo.goBack(); 解决了这个问题;函数调用。这将杀死所有打开的活动,以便在您的测试期间没有活动泄漏。我还使用了上面放置的代码作为双重封面。在众多设备和场景上重复这些测试后,它似乎通过了。

于 2012-06-04T16:05:39.947 回答