「Java」 コマンドラインから JUnit を使う
JUnit と言えば Eclipse なんかから使うことが多いかもしれないけど、
今回はコマンドラインから使ってみました。
試したバージョンは、特に理由はないけど 3.7 と 4.11 ( 2013/04/02 時点の最新 ) です。
1. テスト対象のコードを作成する
今回は簡単のため、以下のように四則演算するものでやりました。
以下のコードを書いて、コンパイルしておく。
public class Sample { public static void main(String[] args) { public int add(int a, int b) { return a + b; } public int sub(int a, int b) { return a - b; } public int mul(int a, int b) { return a * b; } public int div(int a, int b) { return a / b; } }
2. テストケースを作成する
1 で作ったコードのテストケースを作成する。
以下もコンパイルしておく。
ex) javac -cp junit-3.7.jar;. SampleTest.java
import junit.framework.*; public class SampleTest extends TestCase { public SampleTest(String s) { super(s); } public void test() throws Exception { Sample inst = new Sample(); int add = inst.add(10,2); int sub = inst.sub(10,2); int mul = inst.mul(10,2); int div = inst.div(10,2); assertEquals(12, add); assertEquals(8, sub); assertEquals(20, mul); assertEquals(5, div); } }
3. テストケースの実行
3.7 と 4.11 では Test Runnner が違うみたいなんで、わけて書きます。
(a) 3.7 の場合
java -cp junit-3.7.jar;. junit.swingui.TestRunner SampleTest
Test Runnner は、以下の API に情報あり。
http://junit.sourceforge.net/junit3.8.1/javadoc/junit/textui/TestRunner.html
3.8.1 の API だけど気にしない・・・
(b) 4.11 の場合
java -cp junit-4.11.jar;hamcrest-core-1.3.jar;. org.junit.runner.JUnitCore SampleTest
Test Runner は以下に情報あり。
https://github.com/junit-team/junit/wiki/Test-runners
API は以下です。
http://junit.sourceforge.net/javadoc/org/junit/runner/JUnitCore.html
pom の
hamcrest-core-1.3.jar もクラスパスに通しておく。
http://search.maven.org/#artifactdetails%7Cjunit%7Cjunit%7C4.11%7Cjar