特定の JUnit4 テストが実行されたときに、すべての TestResults のログファイルを生成したいと考えています。CI/ant/maven 経由でこれを呼び出したくありません。JUnit テストがどこからでも呼び出されるたびに、これを実行したいと考えています。それが不可能な場合は、問題のある AllTestSuites クラスを呼び出してすべての結果自体をログに記録する独自のランナーを書きたいと思います。
ここに私のテストクラスの1つがあります:
public class SimpleTestSuite extends TestCase{
@Test
public void simpleTestPass() {
assertTrue(true);
}
@Test
public void simpleTestFail() {
assertTrue(false);
}
@Test
public void simpleTestException() {
throw new RuntimeException();
}
}
実行するすべてのテスト スイートを含む TestSuite に含めました。
@RunWith(Suite.class)
@Suite.SuiteClasses({SimpleTestSuite.class, ExampleSuite.class,})
public final class AllTestSuites {}
AllTestSuites を呼び出して、以下のようなログ ファイルを生成したいと考えています。私はJUnit4フレームワークの結果バスにあるものをキャプチャすることを好み、新しいテストランナーを再発明/作成することは好まないことを覚えておいてください。
simpleTestPass - pass - 1/1 assertions passed
simpleTestFail - fail - 0/1 assertions passed
simpleTestException - exception - stacktrace as follows...