1

アプリケーション内のすべてのテスト スイートを実行する junit テスト スイートを作成しようとしています... - これは私が持っているもので、動作するはずですが、テストが見つからないというメッセージが表示され続けます。

import static org.junit.Assert.*;

import org.junit.Test;

/**
 * @author Jason
 *
 */

@Test
public class applicationTest extends TestCase {

    public applicationTestSuite(String name) {
        super(name);
    }

    public static Test suite() {
        TestSuite suite = new TestSuite("ApplicationTestSuite");
        suite.addTest(domain.AllDomainTests.suite());
        suite.addTest(services.AllServicesTests.suite());
        suite.addTest(business.AllBusinessTests.suite());
        return suite;
    }
}

実行する必要があるテスト スイートの 1 つの例 -

package business;

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

@RunWith(Suite.class)
@SuiteClasses({ ItemMgrTest.class })
public class AllBusinessTests {

}
4

2 に答える 2

1

@Testテストメソッドに注釈を付ける必要があります

API ドキュメント

Test アノテーションは、それが付加されている public void メソッドをテスト ケースとして実行できることを JUnit に伝えます。メソッドを実行するために、JUnit はまずクラスの新しいインスタンスを構築し、次にアノテーション付きメソッドを呼び出します。テストによってスローされた例外は、JUnit によって失敗として報告されます。例外がスローされない場合、テストは成功したと見なされます[...]

于 2012-06-17T18:14:33.217 に答える
0

でスイート クラスを指定できます@SuiteClasses。たとえば、次のようになります。

@RunWith(Suite.class)
@SuiteClasses({ AllBusinessTests.class })
public class AllTests {

}

suite() メソッドは JUnit 3 のものであり、JUnit 4 を使用しているため、スイート内のメソッドやテストは見つかりません。

于 2012-06-17T23:12:37.163 に答える