- org.springframework.test.context.ContextConfiguration定义了类层级的元数据,用来决定怎么为集成测试加载和配置一个ApplicationContext。
- 支持的资源类型:上下文加载器可以选择支持基于路径的资源位置(通常是XML配置文件)、或者基于类的资源;也可以选同时支持基于路径的和基于类的资源。因此,@ContextConfiguration 可以被用来声明基于路径的位置(通过locations() 或者 value()属性)、或者组件类(通过classes()属性)。但是要注意:大多数SmartContextLoader的实现仅仅支持一种资源类型。基于路径的资源位置可以是XML配置文件、或者Groovy 脚本(如果Groovy 在类路径下面的话)。
- 组件类:组件类这个名词指下面任何一种:
1)被Configuration注解的类;
2)一个组件(即一个类上有注解 @Component, @Service, @Repository,等等);
3)一个遵从JSR-330 的类,它被jakarta.inject注解;
4)任何包含@Bean方法的类;
5)任何要作为一个spring组件注册的类(即ApplicationContext中的一个spring bean),该类潜在地利用一个构造器的自动装配,不使用spring注解。 - 针对每个组件类,会在ApplicationContext 中注册成一个bean,所以这样的bean可以被注入到其它的bean中、或者注入到测试类实例中。
- 这个注解可以用作一个元注解,来构造定制的合成注解。
- 自从Spring Framework 5.3,这个注解默认会从包围(enclosing )测试类继承。
spring的@ContextConfiguration注解
于 2024-01-29 10:56:04 首次发布