我知道您可以使用以下方法简单地在单元测试方法中注入(inject)服务:
defineBeans {
someService(SomeService)
}
但是当我需要在服务中注入(inject)服务时(服务
someService
调用自己另一个服务 some2Service
)。当我使用上面的代码运行测试时,我收到:Message: Cannot invoke method someMethod() on null object
是否可以在单元测试中将服务注入(inject)到服务中?
谢谢。 ;-)
最佳答案
要在单元测试中使用 spring bean,您需要执行以下操作:
defineBeans
中包含测试所依赖的所有服务和其他 bean关闭。 autowire
属性(property)给 true
对于需要注入(inject)其他 bean 的 bean。 例如:
defineBeans {
someService(SomeService) { bean ->
bean.autowire = true
}
some2Service(Some2Service)
}
关于unit-testing - 在 Grails 单元测试中注入(inject)服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12302880/