Robotium Android如何在测试完成后停止应用程序被杀死。

时间:2014-09-16 12:19:28

标签: android unit-testing robotium

通常,当我们运行测试时,应用程序会在测试完成后被杀死。但在我的情况下,我运行了几个后台服务(云同步)所以我不想杀死应用程序,直到服务完成其任务。

我尝试的是

在拆解中我删除了方法

solo.finishOpenedActivities();和 super.tearDown();

 public void tearDown() throws Exception {
    //solo.finishOpenedActivities();
    //super.tearDown();
}

但它仍会杀死该应用。

需要解决方案。

1→测试完成后不要杀死应用程序。

2 - >在后台服务完成任务后终止应用程序。

提前谢谢。

1 个答案:

答案 0 :(得分:0)

如果你想让一个测试在你的后台服务仍然存在的情况下生存,可能会有超时以确保测试总是完成,那么你应该:

  • 绑定到测试中的服务
  • 听取服务完成情况,这意味着您必须能够通过活页夹对服务的生命周期进行评估
  • 当您收到来自服务的活动时取消绑定
  • 您可以使用CountDownLatch来确保服务在测试中正确完成。