如何在IntelliJ IDEA中从覆盖率测量中排除源代码?

克里斯蒂安·胡杰(Christian Hujer):

在一个项目中,我有一个Utility类,如下所示:

public final class Util {
    private Util() {}
    public static String method1(InputStream in) {...}
    public static String method2(BufferedReader in) {...}
    public static String method3(File file) {...}
}

static包含方法的意义上讲,该类是Utility类因此它被声明final,其构造函数是private创建实例或派生子类根本没有任何意义。

我有一套用于测试项目的单元测试。我正在使用IntelliJ IDEA来运行测试,测量和可视化代码覆盖率。该实用程序的构造函数class Util现在可以降低覆盖范围。我希望100%的逻辑覆盖率达到100%。像Utility类的私有构造函数这样的代码降低了覆盖范围。

是否有可能(最好通过注释)将方法或构造函数标记为与代码覆盖率无关,以便从覆盖率报告中排除此类代码,从而显示100%的覆盖率?

我知道,通常,从覆盖率报告中隐藏代码对您自己不利。我不介意该报告是否包含“被忽略的项目”列表-实际上,检查某人是否正在忽略不应忽略的内容会很好。重点实际上是关于覆盖范围毫无意义的代码,例如Utility类的私有构造函数。

我试图找到是否annotations.jar包含候选人。唯一看起来像是可以远程观察的注解是TestOnly,但不能满足此目的。我也四处张望,plugins/coverage/lib/*.jar找不到候选人,但也许我错过了?

更新此问题现在已过时。同时,IntelliJ IDEA和Jacoco学会了如何忽略没有呼叫者的私有构造函数的覆盖范围。我不知道任何其他Java故意无法访问的代码示例都会引发对话,将其从覆盖率报告中排除。

彼得·劳瑞:

我使用enum实用程序类,大多数覆盖率工具都知道忽略它的方法。

public enum Util { ;

enumfinalprivate默认的构造函数。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从覆盖率统计信息中排除生成的代码

如何从代码覆盖率中排除依赖项?

如何从EclEmma中的覆盖率计算中排除类而不实际从覆盖率本身中排除类

如何在IntelliJ IDEA中获取实际的代码覆盖率报告?

如何从VS2012单元测试中的代码覆盖率分析中排除名称以“ .Test”结尾的项目

IntelliJ IDEA:在代码覆盖率中忽略琐碎的方法

如果设置processUncoveredFilesFromWhitelist =“ true”,如何从PHP单元的代码覆盖率处理中排除方法

如何添加注释以从 jacoco 代码覆盖率报告中排除方法?

如何从业力代码覆盖率报告中排除文件?

使用kcov时,如何从代码覆盖率中排除测试功能?

如何从测试覆盖率分析中排除特定文件?

如何在Intellij中查看代码覆盖率的详细信息

如何排除某些测试的代码覆盖率

代码覆盖率的IntelliJ

如何在VSTS中合并代码覆盖率结果

如何在 Sonarqube 中获得新的代码覆盖率?

如何在Clion中查看代码覆盖率

如何在Golang中获得100%的代码覆盖率?

如何在 Swift 包中显示代码覆盖率?

如何在Xcode中隐藏代码覆盖率注释?

如何让Emma或Cobertura与Maven一起报告其他模块中源代码的覆盖率?

如何显示Flutter测试中的代码覆盖率数据?

如何衡量Golang中的代码覆盖率?

如何排除来自jacoco代码覆盖率一条线吗?

如何使用JaCoCo Maven插件排除SonarQube的代码覆盖率文件

如何从三叶草覆盖率报告中排除方法(哈希码和等于)?

如何从测试中排除JS程序的一部分以避免覆盖率降低?

如何在TFS 2015中自定义代码覆盖率摘要

如何在 python 中为 Flask 框架运行测试套件并获得代码覆盖率?