【发布时间】:2011-12-23 08:41:47
【问题描述】:
我遵循了为 cobertura 报告提供的步骤,并使用 URL Cobertura on Tomcat 中给出的以下步骤生成了报告
但现在我的问题是在不停止 tomcat 的情况下生成 cobertura 报告
【问题讨论】:
标签: tomcat6 code-coverage report cobertura
我遵循了为 cobertura 报告提供的步骤,并使用 URL Cobertura on Tomcat 中给出的以下步骤生成了报告
但现在我的问题是在不停止 tomcat 的情况下生成 cobertura 报告
【问题讨论】:
标签: tomcat6 code-coverage report cobertura
只有 2 种方法可以创建覆盖数据文件。
cobertura 写入文件关于第二种方法:您必须在测试运行后自己调用此函数。您可以(例如)将此代码放入一个 servlet(在测试结束时调用)。
如果不停止 Tomcat 或不执行该函数,将不会得到覆盖率数据文件。
这是来自 cobertura FAQ
Cobertura 仅在应用程序服务器关闭时写入覆盖数据文件。我们不想在运行测试后停止应用服务器。
可以指示 Cobertura 写入数据文件。之一 你的类应该调用静态方法 net.sourceforge.cobertura.coveragedata.ProjectData.saveGlobalProjectData()。 例如,您可以在 您的网络应用程序:try { String className = "net.sourceforge.cobertura.coveragedata.ProjectData"; String methodName = "saveGlobalProjectData"; Class saveClass = Class.forName(className); java.lang.reflect.Method saveMethod = saveClass.getDeclaredMethod(methodName, new Class[0]); saveMethod.invoke(null,new Object[0]); } catch (Throwable t) {}
【讨论】: