@ContextHierarchy

@ContextHierarchy 是一個可以應用於測試類別的註解,用於為整合測試定義 ApplicationContext 實例的階層結構。@ContextHierarchy 應宣告一個或多個 @ContextConfiguration 實例的列表,每個實例定義 Context 階層結構中的一個層級。以下範例示範在單一測試類別中使用 @ContextHierarchy@ContextHierarchy 也可用於測試類別階層結構中)

  • Java

  • Kotlin

@ContextHierarchy({
	@ContextConfiguration("/parent-config.xml"),
	@ContextConfiguration("/child-config.xml")
})
class ContextHierarchyTests {
	// class body...
}
@ContextHierarchy(
	ContextConfiguration("/parent-config.xml"),
	ContextConfiguration("/child-config.xml"))
class ContextHierarchyTests {
	// class body...
}
  • Java

  • Kotlin

@WebAppConfiguration
@ContextHierarchy({
	@ContextConfiguration(classes = AppConfig.class),
	@ContextConfiguration(classes = WebConfig.class)
})
class WebIntegrationTests {
	// class body...
}
@WebAppConfiguration
@ContextHierarchy(
		ContextConfiguration(classes = [AppConfig::class]),
		ContextConfiguration(classes = [WebConfig::class]))
class WebIntegrationTests {
	// class body...
}

如果您需要在測試類別階層結構中合併或覆寫 Context 階層結構中給定層級的組態,您必須明確命名該層級,方法是在類別階層結構中每個對應的層級,在 @ContextConfiguration 中提供相同的值給 name 屬性。請參閱Context 階層結構@ContextHierarchy javadoc 以取得更多範例。