Java中测试服务/DAO层的工具和方法
我试图找出测试服务层和DAO层的最佳方法。所以,有几个小问题Java中测试服务/DAO层的工具和方法,java,testing,automated-tests,integration-testing,Java,Testing,Automated Tests,Integration Testing,我试图找出测试服务层和DAO层的最佳方法。所以,有几个小问题 测试服务层时,最好是针对模拟DAO层进行测试,还是针对测试环境的“活动”DAO层进行测试 当唯一的测试数据库位于共享环境(Oracle/DB2)中时,应该如何测试DAO层中的SQL 如何解决任何DAO写入/更新都需要用DAO读取进行测试这一悖论,而DAO读取也需要进行测试 我正在寻找这方面的任何好的文档、文章或参考资料,以及帮助实现流程自动化的任何工具。我已经知道JUint用于单元测试,Hudson用于CI。以下是我的答案: 使用模拟
在DB服务器共享的场景中,我为每个环境创建了一个模式/用户。由于每个开发人员都有自己的“本地”环境,因此他还拥有一个模式。+1用于工具和建议。您是否反驳Augusto关于DBUnit的评论?DBUnit有其独特之处,但如果您坚持每个单元测试类使用一个数据集(而不是所有测试都使用一个大数据集),它是可以管理的。我必须说,我没有在同一个联盟中尝试过任何其他工具,但DBUnit在一个相当大的项目中对我有效。也许我的陈述有点苛刻,但我发现DBUnit的问题是重构非常困难。我在项目中与4位非常优秀的开发人员一起工作,我们经常更改模式。不幸的是,eclipse不擅长进行这些重构,因此我们必须手动更新DBunit文件(每个测试类有一个数据集)。我认为intellij在这方面可能更好,但我不确定。