上下文故障阈值
自 Spring Framework 6.1 起,引入了上下文**故障阈值**策略,有助于避免重复尝试加载失败的 ApplicationContext
。默认情况下,故障阈值设置为 1
,这意味着对于给定的上下文缓存键(参见 上下文缓存),只会尝试加载 ApplicationContext
一次。任何后续尝试加载具有相同上下文缓存键的 ApplicationContext
将会立即抛出 IllegalStateException
,并附带一条错误消息,解释该尝试已被抢先跳过。此行为允许单个测试类和测试套件更快地失败,避免重复尝试加载永远无法成功加载的 ApplicationContext
,例如,由于配置错误或缺少外部资源导致上下文在当前环境中无法加载。
您可以通过命令行或构建脚本设置名为 spring.test.context.failure.threshold
的 JVM 系统属性来配置上下文故障阈值,其值应为正整数。或者,您也可以通过 SpringProperties
机制设置相同的属性。
如果您想有效地禁用上下文故障阈值,可以将该属性设置为一个非常大的值。例如,您可以通过命令行设置系统属性,使用 -Dspring.test.context.failure.threshold=1000000 。 |