クラス SpringExtension
java.lang.ObjectSE
org.springframework.test.context.junit.jupiter.SpringExtension
- 実装されたすべてのインターフェース:
org.junit.jupiter.api.extension.AfterAllCallback
、org.junit.jupiter.api.extension.AfterEachCallback
、org.junit.jupiter.api.extension.AfterTestExecutionCallback
、org.junit.jupiter.api.extension.BeforeAllCallback
、org.junit.jupiter.api.extension.BeforeEachCallback
、org.junit.jupiter.api.extension.BeforeTestExecutionCallback
、org.junit.jupiter.api.extension.Extension
、org.junit.jupiter.api.extension.ParameterResolver
、org.junit.jupiter.api.extension.TestInstancePostProcessor
public class SpringExtension
extends ObjectSE
implements org.junit.jupiter.api.extension.BeforeAllCallback, org.junit.jupiter.api.extension.AfterAllCallback, org.junit.jupiter.api.extension.TestInstancePostProcessor, org.junit.jupiter.api.extension.BeforeEachCallback, org.junit.jupiter.api.extension.AfterEachCallback, org.junit.jupiter.api.extension.BeforeTestExecutionCallback, org.junit.jupiter.api.extension.AfterTestExecutionCallback, org.junit.jupiter.api.extension.ParameterResolver
SpringExtension
は、Spring TestContext フレームワークを JUnit 5 の Jupiter プログラミングモデルに統合します。 この拡張機能を使用するには、JUnit Jupiter ベースのテストクラスに @ExtendWith(SpringExtension.class)
、@SpringJUnitConfig
、@SpringJUnitWebConfig
のアノテーションを付けるだけです。
- 導入:
- 5.0
- 作成者:
- Sam Brannen, Simon Basl é
- 関連事項:
コンストラクターのサマリー
方法の概要
修飾子と型メソッド説明void
afterAll
(org.junit.jupiter.api.extension.ExtensionContext context) TestContextManager.afterTestClass()
へのデリゲート。void
afterEach
(org.junit.jupiter.api.extension.ExtensionContext context) void
afterTestExecution
(org.junit.jupiter.api.extension.ExtensionContext context) void
beforeAll
(org.junit.jupiter.api.extension.ExtensionContext context) TestContextManager.beforeTestClass()
へのデリゲート。void
beforeEach
(org.junit.jupiter.api.extension.ExtensionContext context) void
beforeTestExecution
(org.junit.jupiter.api.extension.ExtensionContext context) static ApplicationContext
getApplicationContext
(org.junit.jupiter.api.extension.ExtensionContext context) 提供されたExtensionContext
に関連付けられたApplicationContext
を取得します。void
postProcessTestInstance
(ObjectSE testInstance, org.junit.jupiter.api.extension.ExtensionContext context) resolveParameter
(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext) boolean
supportsParameter
(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext)
コンストラクターの詳細
SpringExtension
public SpringExtension()
メソッドの詳細
beforeAll
TestContextManager.beforeTestClass()
へのデリゲート。- 次で指定:
- インターフェース
org.junit.jupiter.api.extension.BeforeAllCallback
のbeforeAll
- 例外:
ExceptionSE
afterAll
TestContextManager.afterTestClass()
へのデリゲート。- 次で指定:
- インターフェース
org.junit.jupiter.api.extension.AfterAllCallback
のafterAll
- 例外:
ExceptionSE
postProcessTestInstance
public void postProcessTestInstance(ObjectSE testInstance, org.junit.jupiter.api.extension.ExtensionContext context) throws ExceptionSE TestContextManager.prepareTestInstance(java.lang.Object)
へのデリゲート。Spring Framework 5.3.2 の時点で、このメソッドは、テストメソッドとテストライフサイクルメソッドに
@Autowired
のアノテーションが付いていないことも検証します。- 次で指定:
- インターフェース
org.junit.jupiter.api.extension.TestInstancePostProcessor
のpostProcessTestInstance
- 例外:
ExceptionSE
beforeEach
- 次で指定:
- インターフェース
org.junit.jupiter.api.extension.BeforeEachCallback
のbeforeEach
- 例外:
ExceptionSE
beforeTestExecution
public void beforeTestExecution(org.junit.jupiter.api.extension.ExtensionContext context) throws ExceptionSE - 次で指定:
- インターフェース
org.junit.jupiter.api.extension.BeforeTestExecutionCallback
のbeforeTestExecution
- 例外:
ExceptionSE
afterTestExecution
public void afterTestExecution(org.junit.jupiter.api.extension.ExtensionContext context) throws ExceptionSE - 次で指定:
- インターフェース
org.junit.jupiter.api.extension.AfterTestExecutionCallback
のafterTestExecution
- 例外:
ExceptionSE
afterEach
TestContextManager.afterTestMethod(java.lang.Object, java.lang.reflect.Method, java.lang.Throwable)
へのデリゲート。- 次で指定:
- インターフェース
org.junit.jupiter.api.extension.AfterEachCallback
のafterEach
- 例外:
ExceptionSE
supportsParameter
public boolean supportsParameter(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext) 付属のParameterContext
のParameter
SE の値を、テストのApplicationContext
からオートワイヤーする必要があるかどうかを判断します。次のいずれかの条件が
true
の場合、パラメーターは自動書き込み可能と見なされます。- 宣言している実行可能ファイルは
Constructor
SE であり、TestConstructorUtils.isAutowirableConstructor(Constructor, Class, PropertyProvider)
はtrue
を返します。isAutowirableConstructor()
は、ルックアップをExtensionContext.getConfigurationParameter(String)
に委譲するフォールバックPropertyProvider
で呼び出されることに注意してください。 - パラメーターは型
ApplicationContext
またはそのサブ型です。 - パラメーターは型
ApplicationEvents
またはそのサブ型です。 ParameterResolutionDelegate.isAutowirable(java.lang.reflect.Parameter, int)
はtrue
を返します。
警告 : テストクラス
Constructor
が@Autowired
でアノテーション付けされているか、自動的にオートワイヤー可能 (TestConstructor
を参照) である場合、Spring はコンストラクター内のすべてのパラメーターを解決する責任を負います。他の登録済みParameterResolver
はパラメーターを解決できません。- 次で指定:
- インターフェース
org.junit.jupiter.api.extension.ParameterResolver
のsupportsParameter
- 関連事項:
- 宣言している実行可能ファイルは
resolveParameter
@Nullable public ObjectSE resolveParameter(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext) - 次で指定:
- インターフェース
org.junit.jupiter.api.extension.ParameterResolver
のresolveParameter
- 関連事項:
getApplicationContext
public static ApplicationContext getApplicationContext(org.junit.jupiter.api.extension.ExtensionContext context) 提供されたExtensionContext
に関連付けられたApplicationContext
を取得します。- パラメーター:
context
- 現在のExtensionContext
(非null
)- 戻り値:
- アプリケーションコンテキスト
- 例外:
IllegalStateExceptionSE
- アプリケーションコンテキストの取得中にエラーが発生した場合- 関連事項: