【发布时间】:2017-02-28 15:09:09
【问题描述】:
我在一家公司工作,该公司使用多个 Maven 项目/模块来创建最终将成为一个产品的产品。为了帮助我解释,想象一个类似于下面的文件结构:
- Parent Directory
- Project_1
- /src/
- /target/
- POM.xml
- Project_2
- /src/
- /target/
- POM.xml
在我们使用 JUnit 对我们的代码进行单元测试的过程中,我们通过测试实现超过一定百分比的代码覆盖率阈值是一项重要的合同要求。
我们正在使用 JaCoCo 以 HTML 网站的形式生成覆盖率报告。 JaCoCo 本身被证明是无价的,但我们遇到的一个主要问题是这会在/target/site/jacoco/ 目录下创建一个站点。
我自己做了一些调查,发现除非我弄错了,否则 JaCoCo 默认不支持将多个 Maven 项目合并到一个 JaCoCo 报告中的能力。
所以我的问题是,任何人都可以提出一个替代解决方案 - 允许我们将多个报告聚合到单个 Web 服务器上吗?
我们有一个选择是将所有站点移动到网络服务器上的单独文件夹中,然后有一个索引页面将它们链接在一起,但它充其量是“笨拙”的。例如:
- Web Server
- index.html
- Project_1
- (Generated report files)
- Project_2
- (Generated report files)
任何更好的建议将不胜感激。
【问题讨论】:
-
也许使用 Ant Task (jacoco.org/jacoco/trunk/doc/ant.html) 来生成比 Maven 插件更灵活的报告?
标签: java maven testing junit jacoco