4

任何人都知道unitils项目是否仍然存在。在那里页面上,maven存储库中的最后一个版本是3.3,它是3.4.2。(实际上有谷歌缓存的页面版本,据说版本是3.4.2)

无论如何,这个项目有没有替代品。我有点缺乏周围生动的社区,真的不想被垂死的项目所束缚。

4

1 回答 1

6

如今,Unitils 似乎几乎被抛弃了。项目在 GitHub 上可用您可以查看它的历史和活动。

反正我的两分钱...

Unitils有严重的缺点:

  • 集成许多第三方库(easymock、dbunit、spring、dbmaintainer、xmlunit、slf4j 等),从而强制它们的版本 - 这是一个非常严重的缺点
  • 由于依赖于许多 3rd 方库,几乎不可能在没有任何公司支持的情况下使其保持最新状态。
  • Unitils 4.0 是从 06.2011 开始开发的,计划在 01.2012 发布,但现在(01.2016)时隔 4 年仍未发布。

数据库单元

对于数据库驱动的应用程序,看起来有趣的方法是使用普通的 DbUnit + Spring-Test 或一些 3rd 方工具:

两者都非常相似,但我个人觉得 DbUnit 令人困惑,非常麻烦且耗时。为什么?尝试维护大量的小 xml 文件,你就会明白我的意思。组合多个数据集也非常困难。

数据库设置

我的选择。DbSetup不需要外部 xml/json 文件,非常方便,允许您使用 fluent builder 自由组合多个数据集。看看下面的代码:

 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 回答