我正在尝试对基于 java 的应用程序进行线路覆盖分析。在网上找到了很多关于如何使用 Sonar+JaCoCo 插件获取线路覆盖结果的资源,看起来很有希望。但是,我无法完全清楚如何实施此解决方案。
更多关于我的项目:
网站调用了一项服务。该服务是基于 java 的,并且是使用 maven 构建的。
还有一个在网站上运行的基于硒的测试套件(在多个实例中调用上述服务)。测试套件由 Ant 构建和调用。
服务的代码库和测试的代码库位于同一主机上的不同位置。
我需要基于集成测试套件为服务生成覆盖率报告。
我通过的资源是:
- http://www.sonarsource.org/measure-coverage-by-integration-tests-with-sonar-updated/
- http://www.eclemma.org/jacoco/trunk/doc/ant.html
即使在经历了所有这些之后,我也不确定将 jacoco-agent.jar 放在哪里,是否让 jacoco 成为 maven(服务的构建过程)或 ant(测试的构建过程)的一部分,如何调用 jacoco 代理,在哪里指定源存储库(服务的代码库)和测试存储库位置。
我已经尝试了上述所有内容的盲目排列,但是一旦我向它们添加 jacoco 任务,maven 构建或 ant 构建就会开始失败。
有人可以帮我解决这个问题吗?我需要了解完成它要遵循的确切步骤。