public interface TestExecutionListener
TestExecutionListener
は、リスナーが登録されている TestContextManager
によって発行されたテスト実行イベントに反応するためのリスナー API を定義します。 すべてのテストフレームワークがこの API で定義されているすべてのライフサイクルコールバックをサポートしているわけではないことに注意してください。例: SpringMethodRule
を使用する場合、beforeTestExecution(org.springframework.test.context.TestContext)
および afterTestExecution(org.springframework.test.context.TestContext)
は JUnit 4 との組み合わせではサポートされません。
このインターフェースは、すべてのメソッドに対して空の default
実装を提供します。具体的な実装では、目前のタスクに適したメソッドのみをオーバーライドすることを選択できます。
具体的な実装では、public
引数なしコンストラクターを提供する必要があります。これにより、ツールと構成メカニズムによってリスナーを透過的にインスタンス化できます。
実装では、オプションで、Ordered
インターフェースまたは @Order
アノテーションを介して、デフォルトリスナーのチェーン間での順序を宣言する必要があります。詳細については、TestContextBootstrapper.getTestExecutionListeners()
を参照してください。
Spring は、次の標準実装(すべて Ordered
を実装)を提供します。
@TestExecutionListeners
, TestContextManager
, AbstractTestExecutionListener
修飾子と型 | メソッドと説明 |
---|---|
default void | afterTestClass(TestContext testContext) クラス内のすべてのテストを実行した後、テストクラスを後処理します。 |
default void | afterTestExecution(TestContext testContext) 提供されたテストコンテキスト でテストメソッドSEを実行した直後に、タイミングやログ記録などの目的でテストを後処理します。 |
default void | afterTestMethod(TestContext testContext) たとえば、テストフィクスチャを切断することによって - 基本的なテストフレームワークのライフサイクルコールバック後の実行後にテストをポスト処理します。 |
default void | beforeTestClass(TestContext testContext) クラス内のすべてのテストを実行する前に、テストクラスを前処理します。 |
default void | beforeTestExecution(TestContext testContext) 提供されたテストコンテキスト でテストメソッドSEを実行する直前に、タイミングやログ記録などの目的でテストを前処理します。 |
default void | beforeTestMethod(TestContext testContext) 基礎となるテストフレームワークのライフサイクル前コールバックの実行前にテストを前処理します。たとえば、テストフィクスチャをセットアップします。 |
default void | prepareTestInstance(TestContext testContext) 提供されたテストコンテキスト のテストインスタンスSEを準備します。たとえば、依存関係を注入します。 |
default void beforeTestClass(TestContext testContext) throws ExceptionSE
このメソッドは、フレームワーク固有の before クラスライフサイクルコールバックの直前に呼び出す必要があります。
デフォルトの実装は空です。必要に応じて、具象クラスでオーバーライドできます。
testContext
- テストのテストコンテキスト。null
ExceptionSE
- 例外の伝播を許可します default void prepareTestInstance(TestContext testContext) throws ExceptionSE
このメソッドは、テストクラスのインスタンス化の直後、またはインスタンス化のできるだけ直後に呼び出す必要があります(SpringMethodRule
の場合のように)。いずれの場合も、このメソッドは、フレームワーク固有のライフサイクルコールバックの前に呼び出す必要があります。
デフォルトの実装は空です。必要に応じて、具象クラスでオーバーライドできます。
testContext
- テストのテストコンテキスト。null
ExceptionSE
- 例外の伝播を許可します default void beforeTestMethod(TestContext testContext) throws ExceptionSE
このメソッド は、ライフサイクルコールバック前のフレームワーク固有の直前に呼び出す必要があります。歴史的な理由により、このメソッドは beforeTestMethod
と呼ばれています。beforeTestExecution(org.springframework.test.context.TestContext)
の導入以来、このメソッドのより適切な名前は、beforeTestSetUp
または beforeEach
のようなものになります。ただし、下位互換性の問題により、残念ながらこのメソッドの名前を変更することはできません。
デフォルトの実装は空です。必要に応じて、具象クラスでオーバーライドできます。
testContext
- テストメソッドが実行されるテストコンテキスト。非 null
ExceptionSE
- 例外の伝播を許可します afterTestMethod(org.springframework.test.context.TestContext)
, beforeTestExecution(org.springframework.test.context.TestContext)
, afterTestExecution(org.springframework.test.context.TestContext)
default void beforeTestExecution(TestContext testContext) throws ExceptionSE
このメソッド は、ライフサイクルコールバックの前にフレームワーク固有の後で呼び出す必要があります。
デフォルトの実装は空です。必要に応じて、具象クラスでオーバーライドできます。
testContext
- テストメソッドが実行されるテストコンテキスト。非 null
ExceptionSE
- 例外の伝播を許可します beforeTestMethod(org.springframework.test.context.TestContext)
, afterTestMethod(org.springframework.test.context.TestContext)
, afterTestExecution(org.springframework.test.context.TestContext)
default void afterTestExecution(TestContext testContext) throws ExceptionSE
このメソッド は、ライフサイクルコールバック後のフレームワーク固有の前に呼び出す必要があります。
デフォルトの実装は空です。必要に応じて、具象クラスでオーバーライドできます。
testContext
- テストメソッドが実行されるテストコンテキスト。非 null
ExceptionSE
- 例外の伝播を許可します beforeTestMethod(org.springframework.test.context.TestContext)
, afterTestMethod(org.springframework.test.context.TestContext)
, beforeTestExecution(org.springframework.test.context.TestContext)
default void afterTestMethod(TestContext testContext) throws ExceptionSE
このメソッド は、ライフサイクルコールバック後のフレームワーク固有の直後に呼び出す必要があります。歴史的な理由により、このメソッドの名前は afterTestMethod
です。afterTestExecution(org.springframework.test.context.TestContext)
の導入以来、このメソッドのより適切な名前は、afterTestTearDown
または afterEach
のようなものになります。ただし、下位互換性の問題から、残念ながらこのメソッドの名前を変更することはできません。
デフォルトの実装は空です。必要に応じて、具象クラスでオーバーライドできます。
testContext
- テストメソッドが実行されたテストコンテキスト ; 決して null
ExceptionSE
- 例外の伝播を許可します beforeTestMethod(org.springframework.test.context.TestContext)
, beforeTestExecution(org.springframework.test.context.TestContext)
, afterTestExecution(org.springframework.test.context.TestContext)
default void afterTestClass(TestContext testContext) throws ExceptionSE
このメソッドは、クラスのライフサイクルコールバックの後、フレームワーク固有の直後に呼び出す必要があります。
デフォルトの実装は空です。必要に応じて、具象クラスでオーバーライドできます。
testContext
- テストのテストコンテキスト。null
ExceptionSE
- 例外の伝播を許可します