2013-04-22 66 views
0

有没有人知道使用现有数据库在内存hsqldb中生成复杂测试数据的方法? 所以我的junit测试将能够使用一部分正确的数据。Hsql从现有数据库创建测试数据

具体问题如下:

我们必须写JUnit测试用于现有项目,以验证集成当我们改变代码(正常测试过程中),但我们已经有一个现有的数据库将正常工作。由于我们只是为其他组件提供服务,因此我们“只”具有从db提供数据的服务。

但是,在hsqldb中加载整个数据库的内存密集程度太高......所以我只想要一部分数据,我可以测试。表格之间有很多参考。

回答

0

我的问题的解决方案是:

  1. 运行现有的集成测试,赶上sql语句
  2. 执行记录的SQL语句
  3. 从执行的SQL
  4. 阅读创建插入语句将语句插入到内存中hsqldb

感谢@CAB的提示!

1

我从来没有使用过这个功能,但是dbunit拥有它。 http://www.dbunit.org/faq.html#extract

我已经使用了dbunit,而且我喜欢它。我们只是自己创建我们的XML数据集。

+0

感谢您的回答。但我渴望从现有的集成测试中创建测试数据。 – Julz 2013-05-27 06:55:31