0
我尝试测试应用程序,该应用程序每次启动应用程序时都会启动一项特殊活动。让我们打电话给这个活动AlreadyStartedActivity
。测试用例看起来是这样的:使用Robotium测试已经运行的活动
public class AlreadyStartedActivityTest extends ActivityInstrumentationTestCase2<AlreadyStartedActivity> {
public AlreadyStartedActivityTest() {
super(AlreadyStartedActivity.class);
}
public void testStart() {
Solo solo = new Solo(getInstrumentation(), getActivity());
// use solo to click and test some features of the activity.
}
}
的问题是AlreadyStartedActivity
在AndroidManifest.xml
配置如下:
<activity android:name=".activity.AlreadyStartedActivity"
android:taskAffinity=""
android:excludeFromRecents="true"
android:launchMode="singleTop" />
singleTop
避免调用AlreadyStartedActivity#onCreate
,这阻止getActivity
方法永远。
有什么我可以做,以避免这种情况?
问候
我知道,在实际的测试用例中,我做了所有这些事情。要清楚地说明:问题是阻塞'getActivity'-方法。如果我错过了构造函数,我会得到一个异常。 – scheffield 2013-04-09 12:35:29
我已经测试过这个代码,它可以工作。它开始活动并调用onCreate()方法。我正在使用robotium-solo-4.0.jar。我也使用相同的清单文件。 – andrew 2013-04-09 12:51:41