EclipseからDBUnitSeamTestテストを実行する

Testタブ:
Suiteを選択して、testngのテストスイート定義XMLファイルを指定します。

Argumentsタブ:

  • Djava.awt.headless=true -Xmx800M -Dsun.lang.ClassLoader.allowArraySyntax=true

インターネットへの接続でproxyを経由する必要がある場合、ここでproxyの設定もします。

Classpath:
bootstrapディレクトリと、test-buildディレクトリ(seam-genの場合)と各種jarを指定します。


testngのテストスイート定義XMLファイルは以下のような感じです。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="DbTest">
<test name="DbTest">
<parameter name="datasourceJndiName" value="java:/DefaultDS"/>
<parameter name="database" value="HSQL" />
<parameter name="binaryDir" value="" />
<groups>
<run>
</run>
</groups>
<classes>
<class name="foo.bar.FooBarDbTest"/>
</classes>
</test>
</suite>

これでやっとEclipse上でDBUnitSeamTestをdebug実行することができます。
あー、なんて面倒なんでしょう。要proxy環境で作業していると、XMLの解析だけでインターネット接続が必要なのがねえ…。

面倒なので、1つテストスイート定義XMLファイルを作って、テスト対象クラスが変わる毎にclass nameを書き換えて実行していました。
Eclipseから1つづつdebug実行する以外であれば、単にant testすればいい話ですし。)