3

例外がスローされたかどうかをチェックするいくつかのテストを実行するJUnit4テストスイートを作成しています。それ自体では、私のテストは次のようになります。

@RunWith(value=BlockJUnit4ClassRunner.class)
public class CreateCommandsExceptionsTest extends TestCase {
    Statistics statistics;
    @Before
    public void setUp(){
        ...
    }
        ...
    @Test (expected=StatsArrayTooShortException.class)
    public void testStatsArrayTooShortException(){
        ...
    }

テストはそれ自体で正常に実行されますが、テストスイートに入れようとすると、テストしている例外がスローされるため、失敗します。

私のテストスイートは次のようになります。

@RunWith(value=BlockJUnit4ClassRunner.class)
public class UnitTestSuite {
public static testSuite(){
    TestSuite suite = new TestSuite("Test for unitTests");

    suite.addTestSuite(StatisticsTest.class);
    ...
    return suite;
}
}

予期された例外が発生したときにテストに合格できるように、テストスイートをどのように設定する必要があるかを誰かに教えてもらえれば幸いです。

4

1 に答える 1

4

Junit 4 のスイートに間違った構文を使用しています。

これが正しい方法です:

@RunWith(Suite.class)
@Suite.SuiteClasses({
        JunitTest1.class,
        JunitTest2.class
})
public class JunitTest5 {
}
于 2011-04-04T09:17:41.917 に答える