myBatis代码覆盖工具

时间:2011-11-22 16:14:05

标签: code-coverage mybatis

我打算为myBatis SQL地图编写代码覆盖工具。

基本上,我想知道在“mvn test”期间是否已调用每个语句。第二步是比较已执行和现有的语句,并以某种方式打印差异。

我想知道它是否已经存在,因为我没找到?

1 个答案:

答案 0 :(得分:1)

对于那些感兴趣的人。最后我实现了这个功能。

只是一些事实。我已经基于spring-test和junit创建了框架。主要目标是同时在多个数据库上测试myBatis语句。

覆盖率工具只是帮助开发人员定义缺失测试的一项功能。 覆盖工具的工作方式可以解释如下:

  • 使用getMappedStatementNames()类中的SqlMapExecutorDelegate方法从myBatis获取所有语句名称。
  • 收集所有被调用的语句名称。
  • 打印所有内容之间的差异并执行到日志。

这个小型测试框架还有许多其他改进。然后将所有这些内容集成到自动构建系统中,与Bamboo服务器等集成。

最后我有这样的输出:

WARN  18/04/2012 15:14:50 (MultipleDatabaseRunner.java:108) COVERAGE: Statement Audit.getAudit wasn't tested.
...