2012-02-28 101 views
0

我们实际上正在开发一个音频服务(在Android的术语中),我们有相当多的测试来覆盖API的许多方面。但我们实际上想知道如何有效地测试服务。Android:测试服务

所以这个问题是相当开放的:你会如何测试一个android服务?

我们目前使用JUnit + EasyMock在真实设备和连续集成服务器(通过仿真器)上进行测试。

任何建议,欢迎提前thx。

PS:我们一直在寻找类似的线程SOF但我们只是发现那些消耗掉的线程数线索:

+0

我刚刚回答了最后一个。 – yorkw 2012-02-28 23:44:20

回答

2

如果你想测试服务的方法,你必须启动这项服务。您可以检查服务是否正在运行:

private boolean isMyServiceRunning() { 
    ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE); 
    for (RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) { 
     if ("com.example.MyService".equals(service.service.getClassName())) { 
      return true; 
     } 
    } 
    return false; 
} 

并在必要时启动它。

+1

谢谢,我正在寻找最完整的答案,并会在接下来接受答案。采取+10的建议。 ;) – Snicolas 2012-02-28 13:53:45