JaCoCo测试基于ant的Netbean Module项目的覆盖范围

时间:2014-05-05 04:48:51

标签: unit-testing netbeans ant jacoco

我们继承了NetBeans模块项目(a.k.a。NetBeans平台项目),该项目使用NetBeans Ant任务构建。我们希望生成项目的代码覆盖率报告,以了解哪些组件未经过单元测试。 生成报告不是构建过程的一部分,我们只是想要了解项目中现有的单元测试覆盖率。

我们已决定使用JaCoCo来尝试生成此内容。但是NetBeans中的原生支持是基于maven的项目。不幸的是,TikiOne JaCoCoverage plugin目前不支持NetBeans模块项目。

我们很高兴通过CLI来推广此报告。有没有人在给定的约束下有成功的手段呢?

2 个答案:

答案 0 :(得分:0)

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

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

答案 1 :(得分:0)

我们通过以下方式成功生成了报告:

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

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

  3. 创建一个简单的ant构建文件,以便从.exec文件生成报告(参见this post
  4. 运行ant buildfile以生成报告。