如何从Instrumentation类获取服务实例?

时间:2013-03-28 07:43:17

标签: android automated-tests integration-testing

我尝试为我的业务逻辑编写一个集成类。我做了什么: 开始一项活动, 执行单击以启动另一个活动和一个向服务器发送命令的服务, 获取第二个活动的实例,并在一段时间后执行停止,结束所有工作 - 活动和服务

测试的成功我区分内容提供者是否没有任何数据,但这还不够。我发送命令时需要检查哪些服务返回。问题是服务有一个类的实例,它接收来自服务器的响应,我不知道如何从我的测试用例中获取服务。

class MyTestCase extends InstrumentationTestCase {
    public void testMethos() {
                Instrumentation instrumentation = getInstrumentation();

    Log.i(TAG, "Try to add monitor");
    ActivityMonitor monitor = instrumentation.addMonitor(
            MyActivity.class.getName(), 
            null, false);
     final DriverActivity myActivity = (MyActivity) 
        instrumentation.waitForMonitorWithTimeout(monitor, 5);
}
}

因此,在这种情况下,我可以访问现在运行的活动,但此方法仅适用于“活动而非服务”。如果我能够获得一个服务,我将得到我的内部实例类,它可以处理来自服务器的响应 - 我将通过反射来做到这一点。

主要问题我如何从我的测试用例中获取服务实例?

0 个答案:

没有答案