0

まったく問題なく動作するサンプルテスト ケースがありますが、メインまたはランナー クラス関数が含まJUnitれていないため、どのように実行を開始したかはわかりません。メイン関数なしでテストケースがどのように実行されるかを共有できますか?JUnit

コードは次のとおりです。

import static org.junit.Assert.assertEquals;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;

public class testJUnit {

@BeforeClass
public static void setUpBeforeClass() throws Exception {
    System.out.println("Before Class");
}

@AfterClass
public static void tearDownAfterClass() throws Exception {
    System.out.println("Tear Down After Class");
}

@Before
public void setUp() throws Exception {
    System.out.println("Setup");
}

@After
public void tearDown() throws Exception {
    System.out.println("Tear Down");
}

@Test
public void test() {
    int a = 1;
    assertEquals("Testing...", 1, a);
}

@Ignore
@Test
public void test1() {
    int a = 156;
    assertEquals("Testing...", 156, a);
}

}
4

4 に答える 4

2

Eclipse から JUnit テストを実行すると、Eclipse は独自のメイン クラス (興味がある場合はRemoteTestRunner ) を持つ別の JVM を実行します。これは事実上 JUnitCore と同じ仕事をしますが、Eclipse に固有の変更があり、結果を Eclipse に戻す必要があります。

詳細については、Eclipse が実際に Junit テストを実行する方法についての私の回答を参照してください。

于 2013-10-23T10:16:36.097 に答える
2

JUnit テストを実行すると、実際には実行され、完全org.junit.runner.JUnitCore修飾クラス名が引数として提供されます。

おそらく、すべてのロジックを処理する Eclipse や Netbeans などの IDE を使用しているでしょう。この件に関する@Matthew Farwellの回答を参照してください。

出典: jUnit FAQ (2006)

于 2013-10-23T09:23:46.667 に答える
0

このクラスには main メソッドは必要ありません。jUnit には実行用のメイン メソッドが含まれており、ある時点で jUnit はテスト クラスのインスタンスを作成します。

于 2013-10-23T09:23:54.260 に答える