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