我需要测试一个应用程序从干净状态启动的用例 - 即在测试开始之前该进程尚未运行。从我所见logcat
,所有的仪器测试都在一个单一的流程实例/会话下运行,所以在我的案例中测试的结果取决于它是否作为#1 运行。不应该这样——众所周知,单元测试(或仪器测试)应该是自主的。
标准的 Android 仪器测试工具和功能有什么方法可以强制 TestRunner 在给定测试之前重新启动进程?如果没有,是否有黑客或第三方库可以帮助我实现这一目标?或者有什么办法我可以明确地说必须首先运行测试 X(最坏的选择,但仍然如此)?
具体来说,我的测试与通过意图启动活动有关FLAG_ACTIVITY_CLEAR_TOP
,除了活动启动模式(例如singleTop
)和流程状态之外,意图标志(例如)在很大程度上决定了测试的结果。