我在做一個應用程序,需要開始測試其他應用程序。
IDEA是您從一個列表中選擇一個應用程序,然後選擇一個應用程序。例如:你選擇Facebook,然後測試登錄。 Facebook應用程序的測試用例開始(使用robotium黑盒測試)。
我創建了測試,如果我將它作爲Android JUnit從eclipse啓動,它會正常工作。但是我無法從我的應用程序啓動它。我認爲我可以使用某種意圖開始測試,但不能(因爲我在「管理應用程序」 - >「全部」中看到了測試)。我也嘗試使用廣播接收器 - 測試應用程序接收廣播,但是當我嘗試實例化測試時,構造函數需要調用super(TARGET_PACKAGE_ID,launcherActivityClass);公共靜態最終字符串TARGET_PACKAGE_ID =「com.facebook.katana」; public static final String LAUNCHER_ACTIVITY_FULL_CLASSNAME =「com.facebook.katana.LoginActivity」;和我的應用程序崩潰:java.lang.ClassNotFoundException:com.facebook.katana.LoginActivity
有沒有人有任何ideea來解決這個問題?
謝謝。從活動中啓動Android JUnit
1
A
回答
0
我有這個問題,我的解決方案包括使用Java反射來獲取ActivityManagerNative,然後調用它的方法來啓動測試。
所以,我的代碼如下所示:
try {
Class<?> ActivityManagerNative = Class
.forName("android.app.ActivityManagerNative");
Log.e("LOADED", "" + ActivityManagerNative);
Method getDefault = ActivityManagerNative.getMethod("getDefault",
(Class<?>[]) null);
Class<?> IActivityManager = Class
.forName("android.app.IActivityManager");
Object am = IActivityManager.cast(getDefault.invoke(
ActivityManagerNative, (Object[]) null));
Class<?> IInstrumentationWatcher = Class
.forName("android.app.IInstrumentationWatcher");
Method startInstrumentation = IActivityManager.getMethod(
"startInstrumentation", ComponentName.class, String.class,
Integer.TYPE, Bundle.class, IInstrumentationWatcher);
ComponentName cn = ComponentName
.unflattenFromString("your.test.package/android.test.InstrumentationTestRunner");
Bundle bundle = new Bundle();
startInstrumentation.invoke(am, cn, null, 0, bundle, null);
} catch (Exception e) {
e.printStackTrace();
}
我不能充分信貸的代碼,我看到類似的東西的地方(用於其他目的,),但我不記得在哪裏。
基本上,代碼試圖從here模擬runInstrument
。
歡呼聲, Silviu
相關問題
- 1. Android Junit測試Button已啓動活動
- 2. 從非活動類啓動Android活動
- 3. JUNIT Android。鏈接到活動
- 4. 活動不會從最近的活動中啓動: - Android
- 5. 從活動列表中啓動Android活動
- 6. 如何從android中的選項卡活動啓動fragement活動?
- 7. Android:動態啓動活動
- 8. Android動態啓動活動
- 9. 從cordova插件啓動android活動
- 10. 如何從Android服務啓動活動
- 11. 從按鍵啓動android活動
- 12. Android - 從活動啓動小工具
- 13. 從Android活動啓動Java源文件
- 14. 從片段android啓動活動錯誤
- 15. 從Android服務啓動鈦「活動」
- 16. Android的啓動活動從類
- 17. 從後臺服務啓動Android活動
- 18. Android啓動啓動錯誤的活動
- 19. Android中的動態啓動活動?
- 20. 在android中動態啓動活動
- 21. 從junit測試啓動jmeter
- 22. Android PendingIntent未啓動活動
- 23. Android活動意向啓動
- 24. Android活動啓動畫面
- 25. 無法啓動活動Android
- 26. 檢測android活動啓動
- 27. Android啓動模態活動
- 28. Android啓動多個活動
- 29. Android PendingIntent啓動活動
- 30. Android無法啓動活動