上下文管理
每個 TestContext 為其負責的測試例項提供上下文管理和快取支援。測試例項不會自動獲得對配置的 ApplicationContext 的訪問許可權。但是,如果測試類實現 ApplicationContextAware 介面,則會將 ApplicationContext 的引用提供給測試例項。請注意,AbstractJUnit4SpringContextTests 和 AbstractTestNGSpringContextTests 都實現了 ApplicationContextAware,因此會自動提供對 ApplicationContext 的訪問。
|
@Autowired ApplicationContext
作為實現
同樣,如果您的測試配置為載入
透過使用 |
使用 TestContext 框架的測試類不需要擴充套件任何特定類或實現特定介面來配置其應用程式上下文。相反,透過在類級別宣告 @ContextConfiguration 註解來完成配置。如果您的測試類沒有顯式宣告應用程式上下文資源位置或元件類,則配置的 ContextLoader 會確定如何從預設位置或預設配置類載入上下文。除了上下文資源位置和元件類之外,應用程式上下文還可以透過應用程式上下文初始化器進行配置。
以下部分解釋瞭如何使用 Spring 的 @ContextConfiguration 註解透過 XML 配置檔案、Groovy 指令碼、元件類(通常是 @Configuration 類)或上下文初始化器來配置測試 ApplicationContext。另外,您也可以為高階用例實現和配置自己的自定義 SmartContextLoader。