查找多模块 Maven 项目的代码覆盖率

Find code coverage for multi module maven project

我在一个 git 存储库中有一个多模块 Maven 项目,在另一个 git 存储库中有我的集成测试用例。多模块 maven 项目的输出是三个模块的三个 jar。现在有一种方法可以通过命令行(这样我们就可以通过 jenkins 运行 这个)找到另一个存储库中集成测试的代码覆盖率。当 运行 到 java -jar <<jarname>> 时,JAR 会启动带有应用程序的码头服务器。

您可以使用 JaCoCo 代理执行您的 jar 以收集覆盖率数据 - http://www.jacoco.org/jacoco/trunk/doc/agent.html

并写一个小 Ant-script 来合并 类、来源和覆盖率数据以生成报告 - http://www.jacoco.org/jacoco/trunk/doc/ant.html

请注意,生成报告需要与在执行测试期间使用的完全相同的 类 - http://www.jacoco.org/jacoco/trunk/doc/classids.html