繁体   English   中英

如何为sonarqube中的最终课程的私有构造函数提供测试覆盖范围?

[英]How to give test coverage for private constructor of a final class in sonarqube?

我有一个util类,它是最终的,我添加了一个私有构造函数来隐藏默认的公共构造函数。 如何通过jacoco覆盖率报告在sonarqube中获得此类课程的覆盖率并在Jenkins中构建?

public final class Util {

      // My contructor
      private Util() {
          super();
     }
 }

根据JaCoCo更改日志,此类私有的空无参数构造函数将从JaCoCo版本0.8.0开始自动过滤掉。 变更日志还指出:

直接读取执行文件并嵌入JaCoCo的工具(例如SonarQube或Jenkins)仅在将其更新到此版本的JaCoCo后才提供过滤功能。

JaCoCo版本0.8.0的发布声明指出:

直接读取exec文件(不是最终报告)并嵌入JaCoCo生成报告的工具只有在更新到此版本的JaCoCo后,才提供过滤功能。 因此,请关注/等待/等各个供应商,例如

由我们作为JaCoCo项目的一部分开发的集成的对应版本(0.8.0)生成的报告(蚂蚁任务,Maven插件和命令行界面)提供了过滤功能。

截至今天(2018年1月30日):

如果将声纳配置为使用cobertura(而不是jacoco)进行代码覆盖,则可以从代码覆盖率中简单地排除该方法

这似乎比使用反射编写人工测试用例要容易。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM