Android 在robotium中使用mock进行测试

Android 在robotium中使用mock进行测试,android,testing,robotium,android-testing,Android,Testing,Robotium,Android Testing,我正在使用mock进行Rbotium考试。我第一次考试不及格,又一次考试及格。我认为这是因为模拟还没有准备好进行测试。但当我添加一个假测试时,我的所有测试都通过了 我的假测试: public void test_ShowA_HomeActionbarTabClicked() { assertEquals("",""); } 所有测试: public void test_ShowCategoryGamesListFragment_CategoryListActionba

我正在使用mock进行Rbotium考试。我第一次考试不及格,又一次考试及格。我认为这是因为模拟还没有准备好进行测试。但当我添加一个假测试时,我的所有测试都通过了

我的假测试:

public void test_ShowA_HomeActionbarTabClicked() {
        assertEquals("","");
    }
所有测试:

 public void test_ShowCategoryGamesListFragment_CategoryListActionbarTabClicked() {
        //click on Categories action bar tab

        getSolo().clickOnText(getSolo().getCurrentActivity().getString(R.string.title_section1));
        getSolo().clickOnText(getSolo().getCurrentActivity().getString(R.string.games_title));
       Assert.assertTrue(getSolo().searchText("GAME_CATEGORY TITLE"));



    }
    public void test_ShowCategoryAppsListFragment_CategoryListActionbarTabClicked() {
        //click on Categories action bar tab
        getSolo().clickOnText(getSolo().getCurrentActivity().getString(R.string.title_section1));
        getSolo().clickOnText(getSolo().getCurrentActivity().getString(R.string.apps_title));
        Assert.assertTrue(getSolo().searchText("APP_CATEGORY TITLE"));

    }

    public void test_ShowCategoryAppsListRowCountFragment_CategoryListActionbarTabClicked() {
        //click on Categories action bar tab
        getSolo().clickOnText(getSolo().getCurrentActivity().getString(R.string.title_section1));
        getSolo().clickOnText(getSolo().getCurrentActivity().getString(R.string.apps_title));
        ListView listView = getSolo().getView(ListView.class, 0);
        assertEquals(5, listView.getCount());

    }
    public void test_ShowCategoryGamesListRowCountFragment_CategoryListActionbarTabClicked() {

        //click on Categories action bar tab
        getSolo().clickOnText(getSolo().getCurrentActivity().getString(R.string.title_section1));
        getSolo().clickOnText(getSolo().getCurrentActivity().getString(R.string.games_title));
        ListView listView = getSolo().getView(ListView.class, 0);
        assertEquals(5, listView.getCount());

    }
我的嘲弄:

protected void setUp() throws Exception {
        super.setUp();
        getMockRestServer().addMockCallResponseHandler(RestCommandFactoryImpl.getInstance().getBaseUrl() + "/category"
                , "[ {\"id\":\"1\", \"parentId\":\"12\",\"iconURL\":\"MyIcon\",\"title\":\"APP_CATEGORY TITLE1\"}," +
                "{\"id\":\"2\", \"parentId\":\"12\",\"iconURL\":\"MyIcon\",\"title\":\"APP_CATEGORY TITLE2\"} , " +
                "{\"id\":\"3\", \"parentId\":\"12\",\"iconURL\":\"MyIcon\",\"title\":\"APP_CATEGORY TITLE3\"} ," +
                "{\"id\":\"4\", \"parentId\":\"12\",\"iconURL\":\"MyIcon\",\"title\":\"APP_CATEGORY TITLE4\"} ," +
                "{\"id\":\"5\", \"parentId\":\"12\",\"iconURL\":\"MyIcon\",\"title\":\"APP_CATEGORY TITLE5\"}," +
                "{\"id\":\"6\", \"parentId\":\"11\",\"iconURL\":\"MyIcon\",\"title\":\"GAME_CATEGORY TITLE1\"}, " +
                "{\"id\":\"7\", \"parentId\":\"11\",\"iconURL\":\"MyIcon\",\"title\":\"GAME_CATEGORY TITLE2\"}," +
                "{\"id\":\"8\", \"parentId\":\"11\",\"iconURL\":\"MyIcon\",\"title\":\"GAME_CATEGORY TITLE3\"}," +
                "{\"id\":\"9\", \"parentId\":\"11\",\"iconURL\":\"MyIcon\",\"title\":\"GAME_CATEGORY TITLE4\"}," +
                "{\"id\":\"10\", \"parentId\":\"11\",\"iconURL\":\"MyIcon\",\"title\":\"GAME_CATEGORY TITLE5\"}," +
                "{\"id\":\"11\", \"parentId\":null,\"iconURL\":\"MyIcon\",\"title\":\"بازی ها\"}," +
                "{\"id\":\"12\", \"parentId\":null,\"iconURL\":\"MyIcon\",\"title\":\"برنامه ها\"}]");

        getMockRestServer().addRestCommandToMock("category", new GetAllCategoriesRestCommand());
        getMockRestServer().start();


    }
在添加假测试之前,只有
test\u ShowCategoryGamesListFragment\u CategoryListationBartabClicked()
不通过和其他测试通过,但在添加假测试之后,所有测试都通过。
请帮助我

我更改了设置,但它正常工作

@凌驾 受保护的void setUp()引发异常{

    MockRestServer mockRestServer = new MockRestServer();
    mockRestServer.addMockCallResponseHandler(RestCommandFactoryImpl.getInstance().getBaseUrl() + "/category"
            , "[ {\"id\":\"1\", \"parentId\":\"12\",\"iconURL\":\"MyIcon\",\"title\":\"APP_CATEGORY TITLE1\"}," +
            "{\"id\":\"2\", \"parentId\":\"12\",\"iconURL\":\"MyIcon\",\"title\":\"APP_CATEGORY TITLE2\"} , " +
            "{\"id\":\"3\", \"parentId\":\"12\",\"iconURL\":\"MyIcon\",\"title\":\"APP_CATEGORY TITLE3\"} ," +
            "{\"id\":\"4\", \"parentId\":\"12\",\"iconURL\":\"MyIcon\",\"title\":\"APP_CATEGORY TITLE4\"} ," +
            "{\"id\":\"5\", \"parentId\":\"12\",\"iconURL\":\"MyIcon\",\"title\":\"APP_CATEGORY TITLE5\"}," +
            "{\"id\":\"6\", \"parentId\":\"11\",\"iconURL\":\"MyIcon\",\"title\":\"GAME_CATEGORY TITLE1\"}, " +
            "{\"id\":\"7\", \"parentId\":\"11\",\"iconURL\":\"MyIcon\",\"title\":\"GAME_CATEGORY TITLE2\"}," +
            "{\"id\":\"8\", \"parentId\":\"11\",\"iconURL\":\"MyIcon\",\"title\":\"GAME_CATEGORY TITLE3\"}," +
            "{\"id\":\"9\", \"parentId\":\"11\",\"iconURL\":\"MyIcon\",\"title\":\"GAME_CATEGORY TITLE4\"}," +
            "{\"id\":\"10\", \"parentId\":\"11\",\"iconURL\":\"MyIcon\",\"title\":\"GAME_CATEGORY TITLE5\"}," +
            "{\"id\":\"11\", \"parentId\":null,\"iconURL\":\"MyIcon\",\"title\":\"بازی ها\"}," +
            "{\"id\":\"12\", \"parentId\":null,\"iconURL\":\"MyIcon\",\"title\":\"برنامه ها\"}]");

    mockRestServer.addRestCommandToMock("category", new GetAllCategoriesRestCommand());
    mockRestServer.start();
    super.setUp();

}