如何testing远程android aidl服务

我有一个与远程android服务进行交互的小应用程序。 我想在unit testing中嘲笑这项服务。 我使用Robolectric和JUnit来处理其他testing用例和阴影,但是我不知道如何处理远程服务。

使用相同的aidl来创build和启动一个使用真正的服务和导出方法的相同包的testing服务是否足够?

由于我没有这个服务的代码,我认为我不能使用Robolectric的ShadowService ,它需要实际的类。

非常感谢。

我将使用Mockito创build接口的模拟,然后在testing中将该实例传递给您的代码。 您也可以手动在testing代码中创build该接口的实现并使用它。

所以你必须自己去模拟,重要的是你要testing的代码使用某种forms的dependency injection来获得对aidl接口的引用,所以你可以在你的testing中传递你自己的模拟。