你应该两个都做。
对于单元测试,肯定使用模拟对象作为依赖项,最好使用类似的工具 EasyMock的 。作为旁注,如果您认为中介服务的功能对于单元测试而言过于宽泛,您可能需要考虑将其分解为更小的部分。
当然,您还应该使用真正的依赖关系进行集成测试,以确保您的服务按预期一起工作。
如果你问的是单元测试,那么这样做的方法是使用模拟或存根来隔离测试类。
但是,如果你觉得这样做还不够,你可以写一些 零件 测试,您使用所有要测试的实际类,并使用存根(或内存)数据库并模拟一些您认为对您要测试的内容不重要的依赖项。
在过去,我已经测试了以这种方式在它们之间具有高度交互的小类集群(有时跳过这些类的单元测试,因为组件测试涵盖了所有场景)。显然,执行此操作的问题在于,您测试的类越多,方案的数量几乎呈指数级增长。也许你可以测试桥和使用该桥的2个真正的类。