目前JUnit 5 API仅允许在静态方法上使用@BeforeAll
。
因此,如果我像这样做,它将无法编译:
@BeforeAll
fun setup() {
MockitoAnnotations.initMocks(this)
mvc = MockMvcBuilders.standaloneSetup(controller).build()
}
为了在 Kotlin 中拥有静态方法,我需要像这样使用 companion object
:
companion object {
@JvmStatic
@BeforeAll
fun setup() {
MockitoAnnotations.initMocks(this)
mvc = MockMvcBuilders.standaloneSetup(smsController).build()
}
}
这段代码可以编译通过,但无法访问父类的变量。那么,在 Kotlin 中调用 JUnit 5 的 @BeforeAll
应该如何做到最符合惯例?
@BeforeAll
是有问题的。为什么不使用@BeforeEach
呢? - Stefan Birkner@BeforeAll
和@BeforeEach
之间几乎没有区别... 几乎没有区别。 - Greg Konush