我将为myBatis SQL maps编写代码覆盖率工具。
基本上,我想知道在“mvn test”期间是否调用了每个语句。第二步是比较已执行的和现有的语句,并以某种方式打印差异。
我想知道它是否已经存在,因为我没有找到?
基本上,我想知道在“mvn test”期间是否调用了每个语句。第二步是比较已执行的和现有的语句,并以某种方式打印差异。
我想知道它是否已经存在,因为我没有找到?
对于那些感兴趣的人,我终于实现了这个功能。
只是一些事实。我基于spring-test和junit创建了一个框架。主要目标是同时在多个数据库上测试myBatis语句。
Coverage工具只是一个帮助开发人员定义缺失测试的功能。Coverage工具的工作方式可以解释为以下步骤:
SqlMapExecutorDelegate
类中的getMappedStatementNames()
方法从myBatis获取所有语句名称。这个小测试框架还有许多其他改进。然后将所有这些东西集成到自动化构建系统中,与Bamboo服务器集成等。
At the end I've got output like this:
WARN 18/04/2012 15:14:50 (MultipleDatabaseRunner.java:108) COVERAGE: Statement Audit.getAudit wasn't tested.
...