【问题标题】:How to inject a service component in Spring Test class using Kotlin?如何使用 Kotlin 在 Spring Test 类中注入服务组件?
【发布时间】:2021-01-23 15:11:19
【问题描述】:

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

这是我的代码:

@SpringBootTest
class IntermediateApplicationTests(val ticketService: TicketService) {


    @Test
    fun contextLoads() {
    }

}

我怎样才能做到这一点?

感谢您的每一个帮助!

【问题讨论】:

    标签: spring spring-boot unit-testing kotlin


    【解决方案1】:

    您可以使用@Autowired 注释来做到这一点:

    @SpringBootTest
    class IntermediateApplicationTests @Autowired constructor(
        val ticketService: TicketService
    ) {
    
    
        @Test
        fun contextLoads() {
        }
    
    }
    

    事实上,这是推荐的注入方式,如果你以其他方式进行,IDEA Spring 插件会报错。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-08
      • 1970-01-01
      • 1970-01-01
      • 2018-09-19
      • 2016-05-27
      相关资源
      最近更新 更多