在我当前的设置中,我想对具有 @autowired
依赖项的 Grails 服务进行单元测试,并为依赖项注入(inject)模拟。
class AcmeService {
@Autowired
FooService fooService // not a Grails service!
}
FooService 不是 Grails 服务,而是 FeignClient 的动态实现。我正在寻找一种在 UnitTest 中为 FooService 服务注入(inject) Mock 的方法。做到这一点的最佳解决方案是什么?
我尝试在设置中设置依赖项,但随后我得到“通过字段 fooService 表达的不满足的依赖项”
class AcmeService extends Specification {
FooService mockedFooService = Mock(FooService)
def setup() {
service.fooService = mockedFooService
}
}
最佳答案
您可以将以下内容添加到单元测试中:
def doWithSpring = {
fooService( InstanceFactoryBean, Mock(FooService) )
}
关于grails - 如何在单元测试下的 Grails 服务中注入(inject)字段的模拟(使用 Autowiring )?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41237915/