4

unitils プロジェクトがまだ生きているかどうかは誰にもわかりません。そこのページの最後のバージョンは、maven リポジトリの 3.3 で、3.4.2 です。

とにかく、このプロジェクトに代わるものはありますか。私は周りに活気のあるコミュニティが欠けているので、死にかけているプロジェクトに縛られることは本当に望んでいません.

4

1 に答える 1

6

Unitils は最近ほとんど放棄されているようです。プロジェクトはこちらの GitHub で入手でき、その歴史と活動を見ることができます。

とにかく私の2セント...

Unitilsには重大な欠点があります。

  • 多くのサードパーティ ライブラリ (easymock、dbunit、spring、dbmaintainer、xmlunit、slf4j など) を統合し、それらのバージョンを強制します - これは非常に深刻な欠点です
  • 多くのサードパーティのライブラリに依存しているため、背後にある会社なしに最新の状態に保つことはほとんど不可能です.
  • Unitils 4.0 は 2011 年 6 月から開発され、2012 年 1 月にリリースされる予定でしたが、4 年後の現在 (2016 年 1 月) にはまだリリースされていません。

DbUnit

データベース駆動型アプリの場合、単純な DbUnit + Spring-Test またはサードパーティ製ツールを使用するのが興味深い方法のように思えるかもしれません。

  • 便利なアノテーションが付属し、github で積極的に開発されているexilys/spring-dbunit@DataSetも、最新バージョンの DbUnit と Spring Framework を使用するように常に更新されています。
  • github でもホストされているspringtestdbunit/spring-test-dbunit@DatabaseSetup (注釈付き)。

どちらも非常に似ていますが、個人的には、DbUnit は紛らわしく、非常に扱いにくく、時間がかかると思います。なんで?大量の小さな xml ファイルを維持しようとすると、私の言いたいことがわかります。また、複数のデータ セットを組み合わせるのも非常に困難です。

DbSetup

私の選択。DbSetupは外部の xml/json ファイルを必要とせず、非常に便利で、流れるようなビルダーを使用して複数のデータ セットを自由に組み合わせることができます。以下のコードを見てください。

 final Operation sql =
         sequenceOf(
                 CommonOperations.DELETE_ALL,
                 CommonOperations.INSERT_REFERENCE_DATA,
                 prepareSpecialData()
         );
 DbSetup dbSetup = new DbSetup(new DataSourceDestination(dataSource), sql);

すべてJavaなので、リファクタリングやメソッドの抽出など自由にできます。

それが役に立てば幸い。

于 2016-01-07T15:43:28.793 に答える