クラス 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
- 関連事項:
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明voidafterAll(org.junit.jupiter.api.extension.ExtensionContext context) TestContextManager.afterTestClass()へのデリゲート。voidafterEach(org.junit.jupiter.api.extension.ExtensionContext context) voidafterTestExecution(org.junit.jupiter.api.extension.ExtensionContext context) voidbeforeAll(org.junit.jupiter.api.extension.ExtensionContext context) TestContextManager.beforeTestClass()へのデリゲート。voidbeforeEach(org.junit.jupiter.api.extension.ExtensionContext context) voidbeforeTestExecution(org.junit.jupiter.api.extension.ExtensionContext context) static ApplicationContextgetApplicationContext(org.junit.jupiter.api.extension.ExtensionContext context) 提供されたExtensionContextに関連付けられたApplicationContextを取得します。voidpostProcessTestInstance(ObjectSE testInstance, org.junit.jupiter.api.extension.ExtensionContext context) resolveParameter(org.junit.jupiter.api.extension.ParameterContext parameterContext, org.junit.jupiter.api.extension.ExtensionContext extensionContext) booleansupportsParameter(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のParameterSE の値を、テストのApplicationContextからオートワイヤーする必要があるかどうかを判断します。次のいずれかの条件が
trueの場合、パラメーターは自動書き込み可能と見なされます。- 宣言している実行可能ファイルは
ConstructorSE であり、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- アプリケーションコンテキストの取得中にエラーが発生した場合- 関連事項: