将jacoco会话导入eclipse后,它显示零覆盖

时间:2014-08-27 06:20:47

标签: jacoco

我按照以下步骤使用jacoco测量代码覆盖率:

  1. 我使用jacoco代理程序即时检测了我的应用程序战争文件。
  2. 启动了tomcat服务器。
  3. 运行一些测试用例。
  4. 停止了tomcat服务器。
  5. 停止tomcat服务器后,将在目标文件夹中生成.exec coverage文件。
  6. 在eclipse中我打开了我的项目工作空间。
  7. 我导入了.exec文件,但它显示了我的maven多模块项目的0%覆盖率。
  8. 请提供以下步骤:如何从此.exec文件中获取准确的覆盖率报告。

2 个答案:

答案 0 :(得分:0)

确保eclipse和服务器上部署的代码库版本相同。 JaCoCo创建文件的哈希值,如果文件中有更改,哈希就会搞砸,你将获得零覆盖率。

答案 1 :(得分:0)

部署到Tom Cat中的类是否可以在不同的时间以不同的方式编译,或者使用与Eclipse中的JDK不同的JDK编译?

http://www.eclemma.org/userdoc/importexport.html的EclEmma导入文档

  

警告:导入的执行数据必须基于Eclipse IDE中也使用的完全相同的类文件。如果外部启动基于不同的类文件(例如,使用不同的编译器创建),则不会显示任何覆盖。

执行数据存储为其生成的类的哈希,因此如果它不匹配Eclipse中的哈希对应类,则您将看不到覆盖。