1

テストスイートにグループ化するSpringTestクラス(を使用して定義@RunWith(SpringJUnit4ClassRunner))が多数あるので、すべてのテストクラスではなく、スイートごとに新しい構成を1回ロードします。

現在TestExecutionListener、構成を再ロードするすべてのSpringテストのリスナーがありますが、多くのテストが同じ構成を共有しているため、それを保存したいと思います。

悲しいことに、niether Springはsのリスニングをサポートしておらず、sのリスナーの概念JUnit TestSuiteもサポートしていません。JUnitTestSuite

4

1 に答える 1

2

junit テスト スイートの前後にアクションを実行する場合は、@BeforeClass@AfterClass、または@ClassRuleを使用できます。スイート全体のセットアップをそこで行うことができます。次の例を使用します。

@RunWith(Suite.class)
@SuiteClasses({ ExpectedFailureTest.class, RetryTest.class })
public class BeforeClassSuite {
  @BeforeClass
  public static void beforeClass() {
    System.out.println("beforeClass");
  }

  @AfterClass
  public static void afterClass() {
    System.out.println("afterClass");
  }

  @ClassRule
  public static ExternalResource resource = new ExternalResource() {
    @Override
    protected void before() throws Throwable {
      System.out.println("before");
    };

    @Override
    protected void after() {
      System.out.println("after");
    };
  };
}

これにより、次の出力が生成されます。

before
beforeClass
... output from tests
afterClass
after
于 2012-05-25T14:24:02.490 に答える