我想寫一個在我的應用程序中執行工作流程的測試。然而;我需要將我的測試分成兩部分。該場景是這樣的:如何在測試結束時保持活動運行?
我開始我的應用程序,然後啓動一個圖庫選擇一個圖像,然後返回到我的應用程序繼續工作流程。
我遇到的問題是我無法在圖庫中自動執行動作,所以這需要一些手動操作。所以我的計劃是自動化第一部分,即啓動我的應用程序,然後啓動Gallery,然後手動選擇一個圖像,然後運行我的自動化測試的第二部分。
的問題是在第一自動化部件的端部,即使我不這樣做一個拆卸步驟並調用activity.finish()
活性被關閉我已經包括的代碼I」的一個例子使用。所以,如果你能指出我在這裏做錯了什麼,那將是非常棒的。我應該提到我正在使用Robotium來實現自動化。
package com.myapp.android.testWithAPK;
import com.jayway.android.robotium.solo.Solo;
import android.test.ActivityInstrumentationTestCase2;
public class MyTest extends ActivityInstrumentationTestCase2 {
private static final String TARGET_PACKAGE_ID = "com.myapp.android";
private static final String LAUNCHER_ACTIVITY_FULL_CLASSNAME =
"com.myapp.android.ui.Main";
private static Class<?> launcherActivityClass;
static {
try {
launcherActivityClass = Class
.forName(LAUNCHER_ACTIVITY_FULL_CLASSNAME);
} catch (ClassNotFoundException e) {
throw new RuntimeException(e);
}
}
@SuppressWarnings("unchecked")
public MyTest() throws ClassNotFoundException {
super(launcherActivityClass);
}
private Solo solo;
@Override
protected void setUp() throws Exception {
solo = new Solo(getInstrumentation());
}
public void testCreatePostCard() throws InterruptedException{
solo.clickOnText("Make a postcard");
solo.clickOnText("Choose photo");