时间:2011-06-16 16:09:56

标签: java instrumentation cobertura

我需要从检测和代码覆盖中跳过某些方法或代码段。这导致我Exclude methods from code coverage with Cobertura

然后是cobertura蚂蚁页面 http://cobertura.sourceforge.net/anttaskreference.html说 ...  您可以通过传入“忽略”正则表达式来告诉Cobertura忽略某些类。 ignore模式可以是任何有效的perl 5正则表达式。这将忽略对忽略正则表达式匹配的任何方法的任何调用。 在教学期间不会跳过这些课程。要排除已检测的类,请将其从文件集中排除,或使用下面的替代方法并指定excludeClasses模式。 ....

来自net.sourceforge.cobertura.ant.InstrumentTask.java的源代码

        for (int i = 0; i < ignoreBranchesRegexs.size(); i++) {
            IgnoreBranches ignoreBranchesRegex = (IgnoreBranches)ignoreBranchesRegexs.get(i);
            builder.addArg("--ignoreBranches", ignoreBranchesRegex.getRegex());
        }

“--ignoreBranches”有什么作用?预期的模式是什么?我要试一试。如果您使用了上述选项,请分享您的“命令行”

2 个答案:

答案 0 :(得分:1)

请看这个链接。 http://svnsearch.org/svnsearch/repos/COBERTURA/search?start-index=60& 显然,为此目的添加了一个@Ignore方法注释。至于代码块,我会尝试相同的事情。如果有效,请告诉我!

答案 1 :(得分:0)

这不是问题的直接答案,但我对它的看法是:“掩盖它”。不要从覆盖率报告中排除内容。修复覆盖范围。