2014-11-14 39 views
9

我有一个多模块项目与Gradle(2.2)+ JaCoCo +声纳。我使用的是sonar-runner插件,当我执行测试时,我可以在每个模块中看到build/jacoco/jacoco.exec下的测试报告。到现在为止还挺好。JaCoCo配置时,源和测试类在不同的模块

问题是,我在模块A中测试了其他模块B的类,因此JaCoCo正在从模块B中识别出具有0%代码覆盖率的类。我知道这不是一个好的做法,但必须这样做。该结构的

实施例:

moduleA 
    src 
     java 
      Foo 
     test 
moduleB 
    src 
     java 
     test 
      TestFoo 

然后JaCoCo将显示类Foo与0%的覆盖率。我试图合并来自所有模块的结果,但是我得到了相同的结果,但在一个文件中,所以这不是我正在寻找的。在执行JaCoCo报告时,是否有任何选项可以包含来自其他模块的资源?

谢谢。

回答

0

每个模块都需要自己的测试。 Jacoco在模块之后构建每个jacoco.exec模块,并且不能回到先前的模块。所以你必须在moduleA中设置一个TestFoo。

相关问题