我正在使用maven为我的android应用程序运行robotium测试套件,但是我遇到了Java:内存不足异常,尽管当我尝试单独运行测试文件时它们运行良好。我尝试使用 MAT 分析堆转储,它说罪魁祸首是一个数组列表,它保存着我所有测试文件的对象,而这些对象又保存着他们正在测试的活动的对象。转储分析为 9.4MB,这个 araylist 包含 4.3MB。请提出任何解决方案。
提前致谢!!马扬克
受保护的 void tearDown() 抛出异常 {
//Log out...
solo.sendKey(Solo.MENU);
solo.clickOnText("More");
solo.clickOnText("Logout");
if (solo.searchButton("Logout")) {
solo.clickOnButton("Logout");
}
solo.waitForActivity(LoginActivity.class.getName(), 1000);
assertTrue(solo.searchText("Your id"));
int i = 0;
while(solo.getAllOpenedActivities()!=null && solo.getAllOpenedActivities().size()>0){
solo.finishOpenedActivities();
solo.goBack();
if(i++>5){
break;
}
}
solo.finishOpenedActivities();
solo = null;
System.gc();
}