これは、
テスト用のマシンが与えられていない作業現場
という状況下で、手探りで、テスト環境を構築の模索する、涙と汗の記録である。
一応eclipse上では、すんなりと動作している。
が、なぜかコマンドラインで同じことをやろうとするといろいろ慣れが必要だ。
JUNIT4について技術的なことを知りたい人は、下記のサイトを見たほうが、この
失敗だらけのドキュメントを見るよりはいいかもしれない。
http://www7b.biglobe.ne.jp/~archer/tryjunit4/tryjunit4.html
なお、いまのところ、失敗例のみで、実行できていない。使いにくいツールについての考察には使えるのかもしれない。
新しい作業現場に配属され、eclipse上でJUnit実行できるけれども、テストケースが肥大化しいて1時間以上かかるようになってるので、外部のリソースを使わずにローカルで何とか自動テストさせたい。という感じ。
カレントディレクトリが、eclipseのworkspaceでテスト用のフォルダだとして
make test cd test git clone ../テストしたいプロジェクト名
とやると、リポジトリをコピーできた。
antはお約束の
ant -version
とやって、設定がなされているか確認が必要。
と思ったが、mavenで取り込まれるバージョンが1.7.0どまりなのに対し、今のantのバージョンは1.9.4。
コマンドラインから実行すると、いろいろなバージョンがありますよ。と警告がでて実行されないことになるようだ。
バージョンを1.7.0に戻して再度実行してみると、警告は消えて実行できた。が、今度は、テストケースが何件あるのか見ていない感じがする。1件のErrorを出して停止した。
Javaでコマンドラインで実行するにあたって、面倒くさそうと思うのが、クラスパスの設定だけれども、
eclipseのエクスポートの機能でant用のbuild.xmlを作れた。
このままの名前だと、あとからの自動作成のときにファイル名がかぶるから、ファイル名を修正しておこう。
オプションは、よくありがちな -fをつける
ant -f filename
自分の環境ではパーミッションの設定が必要だった。
当然クラスパスも含まれているが、相対パスの深さが、テスト用のフォルダだとずれていたりするので、注意する。はじめからあわせておいたほうがよかったかもしれない。
自分の環境ではbuild.xmlのプロパティM2_REPOと、ECLIPSE_HOMEが相対パスだったので調整が必要だった。
antがjunit4に対応するのは、1.6.5からだから、大丈夫のはずだが、デフォルトでは、junit3しか対応していない?
set ANT_OPTS=-Xmx512m
を試みたが、反応なしでした。
Antよ、ここまで、がんばって出来ないのか。。。
既存のごちゃごちゃしたプロジェクトに適用するまえに、シンプルなテストプロジェクトからスタートしたほうが早いんじゃね?
とか思えてきました。
eclipseを使ったクラスパス抽出ツールという位置づけで、build.xml生成を理解しておいて、たとえば、
java org.junit.runner.JUnitCore test.SomeTest
のような感じで実行させることを目標にしたほうがいいと思うようになった。
eclipseでJunitを実行させる際の「実行の構成」を参考にまたいつかがんばろう。