13

JUnit 3では、単に

suite.addTestSuite( MyTest.class )

ただし、MyTestがTestCaseを拡張しないJUnit 4テストである場合、これは機能しません。一連のテストを作成するには、代わりに何をすべきですか?

4

2 に答える 2

10

新しいv4スタイルと共存する必要がある3.8スタイルのスイート/テストの大規模なセットを持っている人のために、あなたは以下を行うことができます:

import org.junit.runner.RunWith;
import org.junit.runners.Suite;

@RunWith(Suite.class)
@Suite.SuiteClasses({
  // Add a JUnit 3 suite
  CalculatorSuite.class,
  // JUnit 4 style tests
  TestCalculatorAddition.class,
  TestCalculatorDivision.class
})
public class CalculatorSuite {
    // A traditional JUnit 3 suite
    public static Test suite() {
        TestSuite suite = new TestSuite();
        suite.addTestSuite(TestCalculatorSubtraction.class);
        return suite;
    }
}
于 2008-10-29T18:09:27.927 に答える
10

自分で答えを見つけた:ここ

そのようです:

import org.junit.runner.RunWith;
import org.junit.runners.Suite;

@RunWith(Suite.class)
@Suite.SuiteClasses({
  TestCalculatorAddition.class,
  TestCalculatorSubtraction.class,
  TestCalculatorMultiplication.class,
  TestCalculatorDivision.class
})
public class CalculatorSuite {
    // the class remains completely empty, 
    // being used only as a holder for the above annotations
}
于 2008-10-17T09:01:41.710 に答える