是否有Java代码覆盖工具记录调用行和方法的次数?

时间:2012-02-21 05:51:00

标签: java code-coverage

希望这个标题能描述我追求的目标。我发现的最接近的是Cobertura,看起来它会记录调用给定代码行的次数,但我还没有找到任何可以计算调用方法的频率。

6 个答案:

答案 0 :(得分:1)

如果您使用像eclipse这样的IDE,可以使用插件 看一下这个 :- http://www.eclipse.org/articles/Article-TPTP-Profiling-Tool/tptpProfilingArticle.html

答案 1 :(得分:1)

我已经使用Eclipse Test & Performance Tools Platform Project并获得了良好的结果 - 它不仅会告诉您调用方法的次数,还会测量每个方法执行的时间,以便您可以使用if for performance调谐。

答案 2 :(得分:1)

答案 3 :(得分:1)

VisualVM(包含在Sun / Oracle JDK中)可以为您做到这一点。

来自Profiling Applications document

的CPU分析部分
  

此profile命令返回有关方法级CPU性能(执行时间)的详细数据,显示每个方法的总执行时间和调用次数。

答案 4 :(得分:0)

如果代码持续运行,您可以随时实现静态变量并自行计算。

答案 5 :(得分:0)

我们的Java (Counting) Profiler与OP想要的非常接近。

它将条目计入Java代码中的每个基本块;这包括方法入口点和控制语句的任何子块(if,while,try,...)。这实现了与单个“行”的计数执行相同的有效结果(不确定在Java程序中究竟是什么意思,但我们会放弃它),而且开销要低得多。

计数数据可以像覆盖数据一样处理;非零意味着“覆盖”。