我有一个Android应用程序和一个运行一些单元测试和自动UI测试的测试项目,使用Robotium。我希望在每个测试启动之前确保目标应用程序的上下文处于某种状态。通常,可以在测试类的setUp()方法中执行此操作。
目标应用程序的Application实例根据共享pref存储中的某些值执行一些初始化工作。我想确保将这些值设置为与我的测试项目的需求相关。
问题是目标Application实例的onCreate()方法是在setUp()方法之前执行的。因此,不考虑测试的setUp()方法的值。这种初始化工作的正确方法是什么?
答案 0 :(得分:0)
实现此目的的一种方法是在调用FakeTestOnlyActivity
之前创建onCreate
在super.onCreate()
中执行所有初始化工作:
public FakeTestOnlyActivity extends ActivityToTest {
public void onCreate(Bundle savedInstanceState){
//do initialization
...
super.onCreate(savedInstanceState);
}
}