技術空間

JUnit

JUnitの導入&サンプルプログラム


TOP > JUnit > JUnitの導入&サンプルプログラム



■JUnitとは

■JUnitの導入
jarをダウンロード

公式サイト(http://junit.org/)から以下2つのjarをダウンロードする。(今回はJUnit4を使用)

■サンプルプログラム

JUnitでテストを実施してみる。

まずテスト対象クラス(Sample.java)を作成する。文字列にカンマを付加するメソッドを1つ作成。

Sample.java
public class Sample{
    public String appendComma(String value){
        return value + ",";
    }
}

次にSample.javaをテストするクラス(SampleTest.java)を作成する。ポイントは以下2つ。

SampleTest.java
import static org.junit.Assert.*;
import org.junit.Test;

public class SampleTest{
    @Test
    public void testAppendComma(){
        Sample sample = new Sample();
        String retValue = sample.appendComma("abc");
        assertEquals("abc,", retValue);
    }
}

なおorg.junit.Assertには次のようなstaticメソッドが用意されている。 何度も使うので、「org.junit.Assert.*」をstaticインポートしておくと便利。

メソッド説明
assertEquals2つのオブジェクトのequals比較がtrueか
assertNotEquals2つのオブジェクトのequals比較がfalseか
assertNullオブジェクトがnullかどうか
assertNotNullオブジェクトがnullでないかどうか
assertTrue状態がtrueか
assertFalse状態がfalseか
assertSame2つのオブジェクトの参照が同一か
assertNotSame2つのオブジェクトの参照が同一でないか
assertArrayEquals2つの配列が同じかどうか

※JavaDocはこちら(http://junit.org/junit4/javadoc/latest/index.html

コンパイルして実行してみる。

コンパイル
javac -cp .;junit-4.12.jar;hamcrest-core-1.3.jar *.java
実行
java -cp .;junit-4.12.jar;hamcrest-core-1.3.jar org.junit.runner.JUnitCore SampleTest

テストに成功した場合は、OKが出力される。

出力結果(成功時)
JUnit version 4.12
.
Time: 0.006

OK (1 test)

テストに失敗した場合は以下のように出力される。

出力結果(失敗時)
JUnit version 4.12
.E
Time: 0.008
There was 1 failure:
1) evaluatesExpression(SampleTest)
org.junit.ComparisonFailure: expected:<abc[]> but was:<abc[,]>
        at org.junit.Assert.assertEquals(Assert.java:115)
        at org.junit.Assert.assertEquals(Assert.java:144)
        ~省略~

FAILURES!!!
Tests run: 1,  Failures: 1

なお「テストに失敗」というのは、結果が想定外のことを意味する。



TOP > JUnit > JUnitの導入&サンプルプログラム

Tweet ̃Gg[͂ĂȃubN}[Nɒlj
技術空間