目前,JUNIT5 API仅允许@BeforeAll用于静态方法
所以,如果这样做,这将无法编译:
@BeforeAll
fun setup() {
MockitoAnnotations.initMocks(this)
mvc = MockMvcBuilders.standaloneSetup(controller).build()
}
Run Code Online (Sandbox Code Playgroud)
所以为了在Kotlin中使用静态方法,我必须像这样放入伴随对象:
companion object {
@JvmStatic
@BeforeAll
fun setup() {
MockitoAnnotations.initMocks(this)
mvc = MockMvcBuilders.standaloneSetup(smsController).build()
}
}
Run Code Online (Sandbox Code Playgroud)
这将编译,但我无法访问父类中的变量.那么用Kotlin调用JUnit5的@BeforeAll会是什么惯用法呢?