初期化とテストメソッド実行後のDBの状態も設定できます。
/** * Returns the database operation executed in test setup. */ protected DatabaseOperation getSetUpOperation() throws Exception { return DatabaseOperation.CLEAN_INSERT; } /** * Returns the database operation executed in test cleanup. */ protected DatabaseOperation getTearDownOperation() throws Exception { return DatabaseOperation.NONE; }
この2つのメソッドです。DbUnitのデフォルトが上のソース。getSetUpOperation()で初期化の際のDBの状態を、getTearDownOperation()でテストメソッド実行後のDBの状態を設定できます。どちらもDatabaseOperationオブジェクトを返しますが、このクラスにはいろいろな定数があるので、それを使うだけでいいです。DatabaseOperation.CLEAN_INSERTは初期化対象のテーブルのデータをすべて削除してから初期化データを登録します。DatabaseOperation.NONEは何もしません。これらをテストフレームワークでオーバーライドすれば動作を変更できます。でもデフォルトが一番使いやすい気がします。ここまで書いてなんですが、変えなくていいかもです。