我知道您可以使用以下方法在单元测试方法中注入服务:
defineBeans {
someService(SomeService)
}
但是当我需要在服务中注入服务时(服务someService
自称为另一个服务some2Service
)。当我使用上面的代码运行测试时,我收到:
Message: Cannot invoke method someMethod() on null object
是否可以在单元测试中将服务注入服务?
感谢。 ; - )
答案 0 :(得分:9)
要在单元测试中使用spring bean,您需要执行以下操作:
defineBeans
闭包中包含测试所依赖的所有服务和其他bean。autowire
属性为true
。例如:
defineBeans {
someService(SomeService) { bean ->
bean.autowire = true
}
some2Service(Some2Service)
}
答案 1 :(得分:0)
您可以使用ref
设置您的成员变量即服务MyService(MyProvider) {
userDetailsService = ref("userDetailsService")
springSecurityService = ref("springSecurityService")
userService = ref("userService")
}
希望有所帮助