上下文故障閾值
自 Spring Framework 6.1 起,引入了上下文**故障閾值**策略,有助於避免重複嘗試載入失敗的 ApplicationContext
。預設情況下,故障閾值設定為 1
,這意味著對於給定的上下文快取鍵(參見 上下文快取),只會嘗試載入 ApplicationContext
一次。任何後續嘗試載入具有相同上下文快取鍵的 ApplicationContext
將會立即丟擲 IllegalStateException
,並附帶一條錯誤訊息,解釋該嘗試已被搶先跳過。此行為允許單個測試類和測試套件更快地失敗,避免重複嘗試載入永遠無法成功載入的 ApplicationContext
,例如,由於配置錯誤或缺少外部資源導致上下文在當前環境中無法載入。
您可以透過命令列或構建指令碼設定名為 spring.test.context.failure.threshold
的 JVM 系統屬性來配置上下文故障閾值,其值應為正整數。或者,您也可以透過 SpringProperties
機制設定相同的屬性。
如果您想有效地停用上下文故障閾值,可以將該屬性設定為一個非常大的值。例如,您可以透過命令列設定系統屬性,使用 -Dspring.test.context.failure.threshold=1000000 。 |