2011-04-08 80 views
1

我的应用程序基于Spring/iBatis(2.3)。我通常在sqlMaps中编写大量的动态查询,并且我想测试我生成的SQL查询以避免任何语法错误。为了更精确,我想:如何测试SQL动态查询?

  1. 检查SQL语法(取决于 的SQL方言)我所有生成的查询
  2. 检查,如果我的查询与实际的数据库结构
正常工作

已经存在一个库,它使我有机会检查SQL语法(步骤1),这取决于sql语言(我实际上使用Oracle),而没有数据库连接?

是否已经存在一个sqlMap解析器,它可以帮助我生成所有潜在的查询,包含动态参数的所有组合?

基本上,我正在考虑一种避免为每个查询编写一个(或多个)单元测试的方法。我想自动执行此步骤以确保我生成的查询始终正确。还有其他建议吗?

+0

你的DAO有多相似?对于测试而言,这可能比关于ibatis的细节更重要。有几个DAO接口的样本? – 2011-04-08 17:36:58

回答

1

有一个相关的question和一些人建议使用DBUnit。也许你应该试试看。

+0

谢谢你的回答。我知道DBUnit,但我正在寻找一种方法来从ibatis sqlmap开始生成每个潜在的查询。一旦我生成查询,我需要测试它们(这里DBUnit当然可以是有用的)。 – javanna 2011-12-09 12:24:02