3

我正在使用 gradle-cobertura 插件生成测试覆盖率报告,可以在此处找到。该插件工作得非常好。现在我试图从覆盖率报告中排除一些类。我尝试通过使用闭包配置约定属性来自定义 Cobertura 插件的行为,如下所示:

cobertura {
    coverageSourceDirs = sourcesSets.main.groovy.srcDirs
    coverageExcludes = ['class_name.groovy']
}

但是覆盖率报告仍然显示我排除的类。任何帮助将不胜感激。

谢谢和问候, 迪甘塔

4

1 回答 1

6

您需要使用正则表达式。

cobertura {
   coverageSourceDirs = sourcesSets.main.groovy.srcDirs
   coverageExcludes = ['.*com\\.myCompany\\.class_name.*']
}

插件页面上的示例仅显示了一个反斜杠来转义点,但我发现我必须使用双反斜杠(我使用的是 gradle 1.4)。

我还将在评论中支持使用更新的 gradle cobertura 插件的建议——我在这个插件上很幸运。

于 2013-02-13T20:21:21.957 回答