3

我正在寻找一种工具,可以为我的团队提供有关代码覆盖率的更有意义的指标。例如,我希望看到两件事:

  • 作为一个团队,我们在上一个 sprint 中编写的代码有多少代码覆盖率?
  • 新代码被开发人员分解了多少代码覆盖率?

有没有人做过这样的事情?有哪些工具可用?具体来说,我正在使用 Java,并且对免费或商业解决方案感兴趣。

4

2 回答 2

0

查看声纳。可以告诉每个冲刺版本。

于 2010-02-03T01:10:13.767 回答
0

你有两个问题:

1)我目前拥有的代码覆盖范围是多少?2) 与我以前相比,覆盖范围是多少?

我认为你需要三个工具:

a) 立即计算您的应用程序的覆盖率,

b) 计算您现在拥有的和上次计算代码覆盖率时拥有的差异的东西,

c) 一些东西来挑选出变化的覆盖数据。

您可以从许多 Java 测试覆盖工具中获得 a),但您希望它以您可以为步骤 c) 处理的形式获得。SD Java 测试覆盖工具确实以可用的形式提供了该数据。测试覆盖率以带有行号数据的 XML 报告,因此您可以轻松构建一个工具来提取您想要的内容。

b) 任何 diff 工具都会在假设来自先前版本和来自此版本的文件一对一排列的情况下识别文件差异。如果他们不这样做,您可以简单地假设测试覆盖率数据完全不同:-} 但是,您希望获得最小的差异;请参阅SD Java Smart Differencer Tool,了解该工具通常计算比传统差异小得多的增量。Smart Differencer 的输出是机器可读的。

c) 对此没有现成的答案,但是结合 a) 和 b) 中的信息的 Perl 脚本可能会解决问题。您要报告的是,对于 diff 工具识别的每个显式增量,覆盖率数据是多少,以及对于所有未根据 diff 工具更改的代码,新覆盖率是否小于旧覆盖率。

于 2010-03-08T23:05:49.247 回答