2

我必须创建一个测试套件来测试在我的应用程序上执行一些操作后发生的任何内存泄漏。那么任何人都可以指导我如何使用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();
4

1 回答 1

0

Robotium 用来协助测试的 Solo 类有一个方法assertMemoryNotLow(),如果 Android 操作系统认为内存不足,调用它时会导致测试失败,例如,如果你创建了很多位图而没有回收它们时你是完毕。

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

于 2013-01-16T15:42:32.517 回答