いまさら聞けないjunitの実行のやり方
junitを簡単にさっと実行したいと思うことはありませんか?
今回はjunitをコマンドラインから直接実行してみたいと思います
まずテストの対称となるクラスをつくります。
Hoge.java
package com.hoge; public class Hoge { public Hoge(){ System.out.println("hoge"); } }
次にそのテストをつくります
HogeTest.java
package com.hoge; import static org.junit.Assert.*; import org.junit.Test; import com.hoge.Hoge; public class HogeTest { @Test public void testHoge(){ Hoge h = new Hoge(); assertNotNull(h); } }
まずは対称のクラスをコンパイルします
javac -d . Hoge.java
-d . のオプションをつけてフォルダーを自動生成しましょう
-d のあとに .でカレントディレクトリからフォルダーのを生成します
com/hoge/Hoge.class ができます。
テストクラスをコンパイルしましょう
javac -d . HogeTest.java
com/hoge/HogeTest.class ができます。
├── Hoge.java ├── HogeTest.java └── com └── hoge ├── Hoge.class └── HogeTest.class
このようなファイル構成になります
では実行してみましょう
java -cp .:/usr/share/java/hamcrest-core.jar:/usr/share/java/junit4.jar org.junit.runner.JUnitCore com.hoge.HogeTest
-cp のあとには:でclasspathをつなげていきます
ここではまず
.:実行時のディレクトリでこれはcom.hogeを見つけるためです
つぎにはjunitとhamcrest-coreへのclasspathです
これはubuntuの時のpathです
org.junit.runner.JUnitCore をつけることでmainがないクラスを実行出来るようになります
Happy TDD :)