@ContextHierarchy

@ContextHierarchy 是一个类级别的注解,用于为集成测试定义 ApplicationContext 实例的层次结构。@ContextHierarchy 应该声明一个或多个 @ContextConfiguration 实例列表,其中每个实例定义上下文层次结构中的一个层级。以下示例演示了在单个测试类中使用 @ContextHierarchy@ContextHierarchy 也可以在测试类层次结构中使用):

  • Java

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

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

如果需要合并或覆盖测试类层次结构中特定层级的配置,必须通过在每个对应层级的 @ContextConfiguration 中提供相同的 name 属性值来显式命名该层级。有关更多示例,请参见 上下文层次结构@ContextHierarchy javadoc。