有哪些代码覆盖率工具可以告诉我上一个迭代期间我编写的代码的覆盖范围?

3
我正在寻找一种工具,可以为我的团队提供更有意义的代码覆盖率指标。例如,我想看到以下两个内容:
  • 我们团队在上一个迭代周期中编写的代码的覆盖率有多少?
  • 新代码的覆盖率如何按开发人员细分?
是否有人以前做过类似的事情?有哪些可用的工具?具体来说,我正在使用Java,并且对免费或商业解决方案感兴趣。
2个回答

0

看看Sonar。它可以告诉你每个迭代的发布情况。


0

你有两个问题:

1)我当前拥有的代码覆盖率是多少? 2)与我以前拥有的覆盖率相比,现在的覆盖率如何?

我认为你需要三个工具:

a)计算你应用程序此刻的覆盖率的工具,

b)计算你现在拥有的和上一次计算代码覆盖率时拥有的差异的工具,

c)挑选出改变的覆盖数据的工具。

您可以从许多 Java 测试覆盖工具中获取 a),但是您需要以可处理的形式获得 c)。SD Java Test Coverage Tool 提供了可用于使用的数据。测试覆盖率以带有行号数据的 XML 形式报告,因此您可以轻松构建工具来提取所需内容。

b) 任何差异工具都可以用来识别文件差异,前提是假设上一个版本和这个版本的文件一一对应。如果不是这样,您可以简单地假定测试覆盖数据完全不同 :-} 然而,您希望获得最小的差异;请参见SD Java Smart Differencer Tool,这是一个比传统差异计算更小的工具。智能差分器的输出是机器可读的。

c) 对于这个问题没有现成的答案,但是一个结合了a)和b)信息的Perl脚本可能会解决问题。您想要报告的是,对于差异工具识别出的每个明确的差异,覆盖数据是什么,以及对于根据差异工具未更改的所有代码,新覆盖是否低于旧覆盖。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接