【发布时间】:2010-05-31 20:43:56
【问题描述】:
以下是我非常不喜欢 dbunit 的一些地方:
1) 您无法指定插入的确切顺序,因为 dbunit 喜欢按表名对插入进行分组,而不是按您在 XML 文件中定义的顺序。当您的记录依赖于其他表中的其他记录时,这是一个问题,因此您必须在测试期间禁用外键约束......这实际上很糟糕,因为这些外键约束将在生产中被触发,而您的测试不会了解他们!
2) 他们似乎一心要强迫您使用 xml 命名空间来定义您的 xml……老实说,我懒得这样做。我喜欢没有任何命名空间的 data.xml。有用。但他们如此坚决地反对它。
3) 在每个测试的基础上创建不同的 xml 文件很困难,因此它实际上鼓励为您的整个应用程序创建数据。不幸的是,一旦数据变大并且事情变得复杂,这个过程也有点臃肿。必须有一种更好的方法来将测试数据拆分成块,而无需在所有测试中复制/粘贴大量测试数据。
4) 在一个大的 xml 文件中跟踪 id 引用是不可能的。如果您有 130 个域类,那只会令人眼花缭乱。该模型根本无法扩展。
在 Spring/Hibernate 空间中是否有一些不那么臃肿和更好的东西? db 单元已经不再受欢迎,我真的在寻找更好的东西。
【问题讨论】:
标签: java spring testing dbunit