我有一些 Java 代码,我想将其从代码覆盖率中排除。我该怎么做?我希望能够添加注释。有没有办法配置或扩展 jacoco (如 gradle 中使用的)来使用它?
Example:
public class Something
{
@ExcludeFromCodeCoverage
public void someMethod() {}
}
由于没有直接的答案,所以做了一些研究并发现了这个 PR。
https://github.com/jacoco/jacoco/pull/822/files
private static boolean matches(final String annotation) {
final String name = annotation
.substring(Math.max(annotation.lastIndexOf('/'),
annotation.lastIndexOf('$')) + 1);
return name.contains("Generated")
}
您可以创建名称包含“生成”的任何注释。我在代码库中创建了以下内容,以排除 Jacoco 报告中包含的方法。
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface ExcludeFromJacocoGeneratedReport {}
在您的方法中使用此注释可以将其排除在覆盖范围之外,如下所示。
public class Something
{
@ExcludeFromJacocoGeneratedReport
public void someMethod() {}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)