@ActiveProfiles

@ActiveProfiles 是一个注解,可以应用于测试类,用于声明在为集成测试加载 ApplicationContext 时应激活哪些 bean 定义配置文件。

以下示例表明 dev 配置文件应该处于活动状态:

Java
@ContextConfiguration
@ActiveProfiles("dev") [id="CO1-1"][id="CO1-1"][id="CO1-1"](1)
class DeveloperTests {
	// class body...
}
<1>  表示 `dev` 配置文件应该处于活动状态。
Kotlin
@ContextConfiguration
@ActiveProfiles("dev") [id="CO2-1"][id="CO1-2"][id="CO2-1"](1)
class DeveloperTests {
	// class body...
}
<1>  表示 `dev` 配置文件应该处于活动状态。

以下示例表明 devintegration 两个配置文件都应该处于活动状态:

Java
@ContextConfiguration
@ActiveProfiles({"dev", "integration"}) [id="CO3-1"][id="CO1-3"][id="CO3-1"](1)
class DeveloperIntegrationTests {
	// class body...
}
<1>  表示 `dev` 和 `integration` 配置文件都应该处于活动状态。
Kotlin
@ContextConfiguration
@ActiveProfiles(["dev", "integration"]) [id="CO4-1"][id="CO1-4"][id="CO4-1"](1)
class DeveloperIntegrationTests {
	// class body...
}
<1>  表示 `dev` 和 `integration` 配置文件都应该处于活动状态。

@ActiveProfiles 默认支持继承超类和封闭类声明的活动 bean 定义配置文件。您还可以通过实现自定义的 ActiveProfilesResolver 并使用 @ActiveProfilesresolver 属性注册它来以编程方式解析活动 bean 定义配置文件。

有关示例和更多详细信息,请参阅 使用环境配置文件进行上下文配置@Nested 测试类配置@ActiveProfiles javadoc。