2016-06-24 33 views
0

我们正在进行junit测试,并希望隔离数据库依赖性。所以我们正在考虑使用内存数据库来替换mysql数据库。有一些我们可以使用的内存数据库,如H2数据库,HSQL。 我的问题是: 1. H2或HSQL能否完美替代mysql而没有任何隐患?因为在sql语法中可能存在一些差异。 2.我想知道在我们进行单元测试时是否有更好的选择来替换mysql数据库?junit测试的内存数据库有什么好处?

+0

因为没有这样的内存数据库完全兼容mysql,所以我们决定转向基于docker的mysql。 – leo

回答

0

像HSQLDB这样的数据库并不像MySQL一样。使用HSQLDB进行测试的优点是可以标记可能在MySQL下传递的代码中的一些意外错误。例如,一些无效的聚合查询在MySQL下工作,但不是HSQLDB。

+0

谢谢你!我们决定使用基于docker的mysql来进行单元测试。 – leo