内置 JAR 的代码覆盖率

And*_*mov 3 java code-coverage jacoco

是否能够为属于我的类路径的 JAR 文件生成代码覆盖率报告?

jar已经编译并添加为库摇篮工程。

的测试代码jar存储在项目中。

too*_*ges 5

是否能够生成代码覆盖率报告以添加到类路径 jar 中?

应该有。不过,您并没有告诉您正在使用哪种代码覆盖率工具。从问题中的标签来看,您似乎正在使用JaCoCo

代码覆盖通常经历 3 个阶段:

  1. 检测:您针对已编译的类运行代码覆盖工具,这会创建类的检测版本。从概念上讲,检测类在每行都注入了增加计数器的代码。这是如何跟踪已访问的线路。
  2. 检测类的代码执行:代码运行并且计数器收集哪些行已被访问。
  3. 报告:读取计数器收集的数据并用于生成代码覆盖率报告。在此阶段,您需要源代码,以便代码覆盖率工具可以将代码覆盖率结果与实际源代码进行匹配。

在您的场景中,您可以做的是解压缩您想要覆盖代码的 JAR,检测其中的类并将这些类压缩到另一个 JAR。用带有检测类的 JAR 替换原始 JAR。

这是一个非标准的工作流,在 Ant/Maven 中可能不容易配置,但您可以通过编程方式来完成,请参阅APIAPI 示例