我打算为myBatis SQL地图编写代码覆盖工具。
基本上,我想知道在“mvn test”期间是否已调用每个语句。第二步是比较已执行和现有的语句,并以某种方式打印差异。
我想知道它是否已经存在,因为我没找到?
答案 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.
...