【问题标题】:Instrumenting lines of a method方法的检测线
【发布时间】:2012-03-06 03:55:01
【问题描述】:

我需要以编程方式检测方法的代码行,以便我可以知道某个执行是否触及了哪些行 - 我希望在行号之间建立一个映射以及它们是否运行。

到目前为止,我一直在使用 JaCoCo 来执行此检测。但是 JaCoCo 检测了整个班级,我想控制检测的方法。

我可以使用 ASMBCELjavassist 之类的库吗?如果是这样,任何人都可以向我指出一些文档或教程吗?

【问题讨论】:

  • 所以您希望能够为您类的某些方法启用检测?
  • 你有没有想过使用 cobertura,它本身就可以做到这一点?
  • @RogerLindsjö 是的,我想为某些方法使用仪器,可以吗?我还希望能够知道每个语句的行号,以便我可以填写该地图。

标签: java instrumentation


【解决方案1】:

您可以查看Cobertura source code(它本身使用ASM)。这不是一个教程,但另一方面,它是一个真实世界的例子,而不是一个玩具。

【讨论】:

    【解决方案2】:

    有很多代码覆盖工具,其中很多都集成了 IDE,因此您可以通过运行程序轻松生成这些报告。您也可以使用 maven 生成报告。

    最简单的解决方案是找到一个开源代码覆盖工具,它可以满足您的需求并对其进行增强,也许该工具的开发人员会接受您的改进。

    这里列出了 13 种与封面报道相关的工具,可帮助您入门。 http://www.java-sources.com/open-source/code-coverage

    【讨论】:

      猜你喜欢
      • 2013-05-15
      • 2020-04-23
      • 2016-07-22
      • 2018-10-07
      • 1970-01-01
      • 2013-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多