将 InstrumentTest 用于自动调用 Intent 的 Activity

Using InstrumentTest for an Activity which calls an Intent automatically

我正在开发一个 Android 应用程序,它使用 Skobbler SDK(又名 skmaps)。我正在使用 InstrumentationTestRunner 来测试我的活动。我有两个测试 类 扩展 ActivityInstrumentationTestCase2<MyActivity>。但是我的第一个测试 activity(MainActivity) 已经调用了一个 Intent 以启动第二个 activity(MapActivity)。所以这是一种 SplashActivity。 MainActivity的测试在testPreconditions()之后陷入死循环。如果我从 MainActivity 中删除 Intent,那么测试会继续 运行。那么,如果 Activity 在没有 运行 的情况下调用 Intent 进入无限循环,我该如何测试它的生命周期?

问候 无限101

问题在于 InstrumentationTestRunner 以不确定的顺序执行 activity 测试。所以有时第二个 activity 在第一个 activity 之前被测试。并且由于等待第一个 activity 结果的循环,第二个陷入了死循环。构建测试套件解决了这个问题。因为在那里你可以指定测试活动的顺序。