单元测试——基于ant的Netbean模块项目的JaCoCo测试覆盖率



我们继承了一个使用NetBeans Ant任务构建的NetBeans模块项目(又称NetBeans平台项目)。我们想要生成项目的代码覆盖报告,以了解哪些组件没有进行单元测试。生成报告不是构建过程的一部分,它只是我们想要做的事情,以了解项目中现有的单元测试覆盖率。

我们决定使用JaCoCo来尝试生成这个。然而,NetBeans的原生支持是针对基于maven的项目的。不幸的是,TikiOne JaCoCoverage插件目前不支持NetBeans模块项目。

我们很高兴通过CLI来驱动它以获得初始报告。在给定的限制条件下,有人有成功的方法这样做吗?

最近有人在NetBeans邮件列表https://netbeans.org/projects/platform/lists/dev/archive/2014-04/message/124上发布了相关消息

短版本:Cobertura插件,你正在寻找的东西现在没有维护,但你可以构建它并运行它。

通过执行以下操作,我们已经成功地生成了报告:

  1. 编辑project.properties文件,以便在运行单元测试时运行JaCoCo代理。这可以通过添加以下内容来实现:

    test.run.args=-javaagent:[yourpath/]jacocoagent.jar=destfile=[yourpath/]jacoco.exec
    
  2. 使用Netbeans运行test任务。这将生成jacoco.exec文件。

  3. 创建一个简单的ant构建文件,从.exec文件生成报告(见这篇文章)
  4. 运行ant构建文件生成报告。

相关内容

  • 没有找到相关文章

最新更新