2

ねえ、私はSpringJUnit4ClassRunnerを使用しています。デフォルトでは、TestContextManager.afterTestMethod()は、次のように、非常に短時間(メッセージのみ)にスローされたすべての例外またはアサーションをログに記録します。

testMethod = testDataDriven@DataDrivenAbstractTest, testException = [null]]

プロジェクト内のテストによってスローされたすべての例外をログに記録するカスタムTestExecutionListenerを作成したいと思います。各テストクラスに@TestExecutionListenersアノテーションを付けることを覚えておく必要はありません。

どういうわけかグローバルにそれを行うことができますか?私は正しい方向に進んでいますか?

ありがとう。

4

2 に答える 2

1

いいえ、グローバルに実行することはできませんが、を使用する基本クラスを作成し、TestExecutionListener他のすべてのテストクラスに拡張させることはできます。

または、拡張SpringJUnit4ClassRunnerして自分の作業を行い、テストを実行することもできます@Runwith(YourCustomSpringJUnit4ClassRunner.class)

于 2011-01-20T16:39:26.533 に答える
0

はい、できます。

https://docs.spring.io/spring-framework/docs/current/reference/html/testing.html#testcontext-tel-config-automatic-discoveryを参照してください

SpringFactoriesLoaderファイルを検出しMETA-INF/spring.factoriesます。そのファイルにリスナーを配置します。

org.springframework.test.context.TestExecutionListener=com.example.YourCoolTestExecutionListener
于 2021-10-27T15:30:12.363 に答える