在我目前的设置中,我希望对具有@autowired
依赖关系的Grails服务进行单元测试,并为依赖项注入模拟。
class AcmeService {
@Autowired
FooService fooService // not a Grails service!
}
FooService不是Grails服务,但它是FeignClient的动态实现。我正在寻找一种方法在UnitTest中为FooService服务注入一个Mock。这样做的最佳解决方案是什么?
我尝试在设置中设置依赖关系,但后来我通过字段fooService'
表达了不满意的依赖关系class AcmeService extends Specification {
FooService mockedFooService = Mock(FooService)
def setup() {
service.fooService = mockedFooService
}
}
答案 0 :(得分:2)
您可以将以下内容添加到单元测试中:
def doWithSpring = {
fooService( InstanceFactoryBean, Mock(FooService) )
}