Java EE容器上的三叶草

时间:2009-02-19 13:34:13

标签: java jboss code-coverage instrumentation clover

我想在生产环境中运行Atlassian Clover(我没有开销问题)。有没有人有这方面的经验,或者你能指导我怎么做吗?

我的目标是根据真实用户的操作获取三叶草报告。我正在使用JBoss + JDK 1.5

4 个答案:

答案 0 :(得分:1)

您可以将三叶草构建(以及在检测期间生成的coverage.db文件)部署到您的服务器,添加一堆特定于三叶草的java选项来设置它然后收集结果,使用三叶草合并合并它们工具并生成报告。有关详细说明,请参阅Clover Wiki

请注意,默认情况下,clover会在流程终止时转储覆盖率数据 - 您可能希望对如何定期进行此操作进行一些研究。查看-flushpolicy-flushinterval选项。

答案 1 :(得分:1)

终于找到了答案,谢谢大家。 在我创建Clover DB(cmd /或eclipse集成)之后,在启动我的App服务器时,我添加了以下参数 -Djboss.shutdown.forceHalt = false -Dclover.initstring.basedir = / coverage.db 它会完成这项工作

答案 2 :(得分:0)

一般策略是在编译Web应用程序时使用Clover(或Cobertura或类似工具)。如果您使用maven进行构建,则可以使用cobertura插件:

http://mojo.codehaus.org/cobertura-maven-plugin/instrument-mojo.html

使用cobertura:仪器目标轻松添加。然后你就像以前一样将生成的战争放入JBoss。

您可能也对Glassbox感兴趣:

http://www.glassbox.com/glassbox/Home.html

它不会生成代码覆盖率,而是为您提供有关正在发生的事情的高级报告,并可以告诉您可能存在瓶颈的地方。

答案 3 :(得分:-1)

我很久没有使用过三叶草......但我确实使用了cobertura(http://cobertura.sourceforge.net/faq.html)进行代码覆盖。查看cobertura的常见问题解答,它可以与JBoss一起使用。