如何使用 Kotlin 在 Spring Test 类中注入服务组件?

Ion*_*Man 7 spring unit-testing kotlin spring-boot

我正在尝试测试业务逻辑/服务。在我的 Spring Boot 应用程序中使用 Kotlin,我尝试使用测试类构造函数实例化我的服务。但这是不允许的,因为我得到了ParameterResolutionException.

这是我的代码:

@SpringBootTest
class IntermediateApplicationTests(val ticketService: TicketService) {


    @Test
    fun contextLoads() {
    }

}
Run Code Online (Sandbox Code Playgroud)

我怎样才能实现这个目标?

感谢您的每一个帮助!

Ada*_*old 6

您可以使用@Autowired注释来执行此操作:

@SpringBootTest
class IntermediateApplicationTests @Autowired constructor(
    val ticketService: TicketService
) {


    @Test
    fun contextLoads() {
    }

}
Run Code Online (Sandbox Code Playgroud)

事实上,这是推荐的注入方式,如果您采用其他方式,IDEA Spring 插件会抱怨。