作者热门文章
- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我有一个与远程 android
服务交互的小应用程序。我想在单元测试中模拟该服务。我用 Robolectric和 JUnit
用于其他测试用例和影子,但我不知道如何处理远程服务。
使用与真实服务相同的包创建和启动测试服务并使用相同的 aidl
导出方法是否足够?
由于我没有该服务的代码,我假设我不能使用 Robolectric
的 ShadowService这需要有实际的类(class)。
非常感谢。
最佳答案
我会使用 Mockito创建接口(interface)的模拟,然后将该实例传递给测试中的代码。您还可以在测试代码中手动创建该接口(interface)的实现并使用它。
因此您必须自己进行模拟,重要的是您要测试的代码使用某种形式的依赖注入(inject)来获取对aidl 接口(interface)的引用,这样您就可以在测试中传递自己的模拟。
关于java - 如何测试远程androidaidl服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10960903/
我是一名优秀的程序员,十分优秀!