测试Android应用程序流程生命周期&达到空进程状态时恢复状态

时间:2013-10-17 17:47:06

标签: testing android-lifecycle android

我最近一直在努力提高我在应用程序流程生命周期各个阶段管理Android应用程序状态方面的知识和技能。具体来说,我一直在测试maintain and share global data between activities的各种方法。在我的测试应用程序中,为了测试全局应用程序数据和/或单例数据的重新创建,我需要等待几个小时或更长时间才能让我的手机决定其他进程更重要并放置我的测试应用程序处于process lifecycle documentation中定义的空进程状态。此时,应用程序的数据将被释放,并且需要在应用程序再次返回前台后重新创建。如果操作不正确,应用程序上次已知状态的重新初始化可能会因各种原因导致关闭力。

所以,我的问题是,除了等待有机地发生这种情况之外,还有一种真实世界的方法来测试这种情况。例如,QA用例看起来像测试应用程序进入后台(非常)延长的时间段,然后在应用程序达到空进程状态后再次进入前台?

1 个答案:

答案 0 :(得分:3)

我一直在做一些试验&错误,并提出了一个很好的解决方案:

最终,这归结为每个Activity都能够独立地恢复它的状态。这也适用于应用程序。 “空进程”状态是操作系统在将应用程序视为不再重要之后将其置于最终状态。

以下是测试我的应用空进程方案的原因:

  1. 将您的应用程序打开到相关页面。
  2. 推“家” 你手机上的按钮。
  3. 开放不少于3个高资源使用率 具有长滚动列表视图的应用程序(我使用Facebook,Youtube和 Google Play商店)。
  4. 在每个应用程序中滚动列表视图 相当于使用系统资源。
  5. 完成所有3个应用后, 重新打开你的应用程序。
  6. 为每项活动运行上述测试&片段允许测试不仅活动和/或片段的完整再现,还包括整个应用程序。

    这有点像P.I.T.A.,但它很有效。