如何使用Robotium自动分配应用程序的内存(以查找内存泄漏)

时间:2013-01-16 13:33:09

标签: robotium monkeyrunner

我必须创建一个测试套件来测试在我的应用程序上执行某些操作后发生的任何内存泄漏。所以任何人都可以指导我如何使用robotium实现它。我能够实现它但需要更多帮助

测试脚本以查找内存泄漏:

boolean value=Debug.dumpService ("com.apppackage.name", fd, null);
ActivityManager manager=(ActivityManager)getActivity().getSystemService(context.ACTIVITY_SERVICE);
List<RunningAppProcessInfo> service= manager.getRunningAppProcesses();
for(int i=0;i<service.size();i++){
   if (service.get(i).processName.equals("com.apppackage.name"))
              {
                pid=service.get(i).pid;  
          }
          }
android.os.Debug.MemoryInfo[] meminfo=manager.getProcessMemoryInfo (new int []{pid});
Log.d("meminfo",meminfo+"length");
String info = meminfo.toString();

1 个答案:

答案 0 :(得分:0)

Robotium用于协助测试的Solo类具有方法assertMemoryNotLow(),如果Android操作系统认为内存较低,则会导致测试失败,例如,如果您创建了大量的内存完成后,位图不会回收它们。

至于使用Robotium完全实现您的套件,这种开放式问题超出了Stack Overflow的范围。您可以访问此链接Getting Started With Robotium,查看如何使用Robotium的示例。它有一个非常有用的链接来下载由开发人员创建的测试项目,这应该足以让你前进。一旦你开始,随时可以回来遇到挑战,并询问有关框架的一些具体问题;社区将很乐意提供帮助。祝你好运!