メインプロジェクトはJRuby統合にバンドルされたRubyライブラリ一式である。またそれにはRubyの世界において有名なライブラリも含まれてい る。RSpec(for BDD)、mocha(モックとスタブ)、dust(ディスクリプティブブロックシンタックステスト定義)、Test・UnitとActiveSupport(Rubyユーティリティクラス)である。
テストケースの外観は最終的に下記のようになるだろう(RSpec的に)。
import java.util.HashMapAnt(source)タスクJtestRがAnt,buildr(source)とMaven2(source)統合をサポートする。
describe "An empty", HashMap do
before :each do
@hash_map = HashMap.new
end
it "should be able to add an entry to it" do
@hash_map.put "foo", "bar"
@hash_map.get("foo").should == "bar"
end
it "should return a keyset iterator that throws an exception on next" do
proc do
@hash_map.key_set.iterator.next
end.should raise_error(java.util.NoSuchElementException)
end
end
JtestRはJRuby(まだかなりの開発段階にあるが)に依存しているのでもしテストを頻繁に動作させるのならばJRubyの長いスタートアップタイムを防ぐために(スタートガイドに解説されているように)サーバAntタスクを設定するべきだ。
0.1.1バージョンのJtestRはアーリーリリースにあるのであなたの意見は今後の方向性に大変有効となるだろう。
原文はこちらです:http://www.infoq.com/news/2008/01/boost-java-test