SpringBootでTestする場合
Autowired書いてinjectionしたくなるときがありますよね!
そのやり方
・Bean
interface MasterkaService2 { fun ikemen(): Int } @Service class MasterkaService2Impl : MasterkaService2 { override fun ikemen(): Int { return 1 } }
・テストコード
@SpringBootTest class AutowireTest { @Autowired lateinit var service: MasterkaService2 @Test fun テスト() { Assertions.assertEquals(1, service.ikemen()) } }
以下のエラーが出たら@Serviceが漏れてるだけ
expected at least 1 bean which qualifies as autowire candidate
SpringBootTestと書けばSpringBootとして実行されるようです