在我看来,robotium 的设计方式是一次测试 1 个 Activity 而不是整个应用程序。
所以我的问题是如何测试一个期望额外传递给它的活动?我的意思是额外的intent.putExtra("Something", object);
在我看来,robotium 的设计方式是一次测试 1 个 Activity 而不是整个应用程序。
所以我的问题是如何测试一个期望额外传递给它的活动?我的意思是额外的intent.putExtra("Something", object);
方法setActivityIntent(Intent)应该是您正在寻找的。我使用此方法为我的 Activity 的 TestCase 提供自定义 Intent。只需在构造函数中调用super后使用它。
Intent i = new Intent();
i.putExtra("myExtra", "anyValue");
setActivityIntent(i);
我认为您不必在构造函数中执行此操作,但您需要确保在第一次调用 getActivity() 之前调用它。getActivity 将使用您的 Intent 来创建 Activity。
您可以改写 getActivity() 。
@Override
public NewActivity getActivity() {
Intent intent = new Intent();
intent.putExtra("exampleExtra", "some data");
setActivityIntent(intent);
return super.getActivity();
}
有关更多详细信息,请参阅使用 Robotium 测试 Android。