以下は、dbunit について私が本当に嫌いな点です。
1) 挿入の正確な順序を指定することはできません。これは、dbunit が挿入を XML ファイルで定義した順序ではなく、テーブル名でグループ化することを好むためです。これは、他のテーブルの他のレコードに依存するレコードがある場合に問題になるため、テスト中に外部キー制約を無効にする必要があります...テスト中にこれらの外部キー制約が本番環境で発生するため、実際には最悪ですそれらを認識してください!
2) 彼らは、xml 名前空間を使用して xml を定義することを強要しているように見えます...正直なところ、これを行うのは面倒です。名前空間のない data.xml が好きです。できます。しかし、彼らはそれを非推奨にすることに非常に熱心です。
3) テストごとに異なる xml ファイルを作成するのは難しいため、実際にはアプリ全体のデータを作成することが推奨されます。残念ながら、データのサイズが大きくなり、物事が絡み合うと、このプロセスも少し肥大化します。すべてのテストにわたって大量のテスト データをコピー/貼り付けすることなく、テスト データをチャンクに分割するためのより良い方法が必要です。
4) 大きな xml ファイルで ID 参照を追跡することは不可能です。130 のドメイン クラスがある場合、当惑するだけです。このモデルは単にスケーリングしません。
Spring/Hibernate スペースで、肥大化が少なく、より優れたものはありますか? db unit は歓迎されなくなったので、もっと良いものを探しています。