我正在开发一款使用Skobbler SDK(AKA skmaps)的Android应用。我正在使用InstrumentationTestRunner来完成我的活动。我有两个扩展ActivityInstrumentationTestCase2<MyActivity>
的测试类。但是我的第一个测试活动(MainActivity)已经调用了一个Intent来启动第二个活动(MapActivity)。所以这是一种SplashActivity。 MainActivity的测试在testPreconditions()
之后进入无限循环。如果我从MainActivity中删除Intent,那么测试将继续运行。那么,如果一个Activity调用一个Intent而不进入无限循环,我怎么能用它的生命周期来测试它?
此致 unlimited101
答案 0 :(得分:0)
问题在于InstrumentationTestRunner以非确定性顺序执行活动测试。因此,有时第二个活动在第一个活动之前进行了测试。由于循环等待第一个活动的结果,第二个活动陷入无限循环。构建测试套件解决了这个问题。因为在那里你可以指定测试活动的顺序。