logger.isDebugEnabled() is killing my code coverage. I'm planning to exclude it while running cobertura

孤街浪徒 提交于 2019-12-25 02:18:13

问题


I tried by adding in org.slf4j.* in cobertura.exclude. but there is no use.
my buildfile

require 'buildr/java/cobertura'
require 'buildr/scala'
require 'buildr/myProject'
.....
.....
compile.options.other = %w(-encoding UTF-8)
cobertura.exclude= 'org.slf4j.*'
.....
.....

Please suggest how to proceed.

Thank you in advance


回答1:


The issue is that cobertura.exclude is to exclude files/classes in your project from being instrumented.

What you want to use is cobertura.ignore, e.g.,

cobertura.ignore 'java.util.logging.*'

which accepts a regular expression of class/method name to ignore.

From the Ant task documentation at https://github.com/cobertura/cobertura/wiki/Ant-Task-Reference:

You can tell Cobertura to ignore certain classes by passing in "ignore" regular expressions. The ignore pattern can be any valid perl 5 regular expression. This will ignore any calls to any method that matches the ignore regular expression. It will NOT skip over these classes during instrumention. To exclude classes from being instrumented, either exclude them from your fileset or use the alternative method below and specify an excludeClasses pattern.



来源:https://stackoverflow.com/questions/22047523/logger-isdebugenabled-is-killing-my-code-coverage-im-planning-to-exclude-it

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!