Grails,Hudson和Cobertura,哪些测试覆盖了我的代码?

时间:2011-05-10 18:11:56

标签: testing grails hudson code-coverage cobertura

我刚刚开始研究现有的grails项目,其中编写了大量代码,并且测试不多。该项目正在使用Hudson和Cobertura插件,这很好。当我正在处理事情时,我注意到即使没有为代码编写特定的测试类,它也会被覆盖。有没有简单的方法来查看代码涉及哪些测试?如果我能够知道这些信息,那将节省我一些时间。 感谢

1 个答案:

答案 0 :(得分:0)

您要做的是每次测试收集测试覆盖率数据。然后,当测试没有执行某些代码块时,您可以将其追溯到测试中。

你需要一个能够做到这一点的测试覆盖工具; AFAIK,这很容易组织。只需运行一个测试并收集测试覆盖率数据。

但是,大多数人还想知道,给出所有测试的应用程序的覆盖范围是什么?你可以运行两次测试,一次获得这个测试覆盖的信息,然后是整个批次以获得批量覆盖。某些工具(ours included)可以让您将各个测试的覆盖率结合起来,为集合生成覆盖率,因此您不必运行它们两次。

我们的工具有一个很好的额外功能:如果您收集特定于测试的覆盖范围,那么当您修改代码时,该工具可以确定需要重新运行哪些测试。您需要一些简单的脚本,将已更改源的检测数据结果与每次测试的结果进行比较。