问题标签 [jacoco]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
maven - 如何配置多模块 Maven + Sonar + JaCoCo 以提供合并覆盖率报告?
我已经在互联网上上下搜索了这个。那里有很多半答案,与 Maven 属性有关,例如,${sonar.jacoco.reportPath}
或org.jacoco:jacoco-maven-plugin:prepare-agent
设置maven-surefire-plugin
argLine
.-javaagent
不知何故,这些答案(无论是单独的还是组合的)都没有产生我所追求的: 覆盖率报告,如果在堆栈更高的测试中使用某个类(例如正在使用的实体),则显示该类已被覆盖由 DAO,即使它自己的模块中的测试没有完全覆盖它。
请问在某处有明确的配置来实现这一点吗?
ant - JaCoCo Selenium 测试代码覆盖率并使用 Ant 导入 Sonar
我正在通过 Ant 运行声纳任务,由 Jenkins 在 RHEL 环境中触发。我成功地使用 Cobertura 进行 Junit 代码覆盖和 Surefire 进行报告。声纳可以很好地导入 Surefire 报告。
但是,现在我在 Jenkins 中使用 Ant 运行 Selenium 测试。我想向 Sonar 报告代码覆盖率和测试结果。显然我需要分析代码覆盖率和报告测试的 JaCoCo 插件。我认为对于单元测试,Jenkins 完成了这项工作,Sonar 只将报告导入到它自己的存储库中。
我对如何实际做到这一点感到困惑。网页http://www.sonarsource.org/measure-coverage-by-integration-tests-with-sonar-updated/引用 JaCoCo 页面http://www.eclemma.org/jacoco/trunk/doc/蚂蚁.html。我不确定要执行哪些步骤。我需要覆盖目标吗?我应该只启动代理吗?我在 Ant 的哪个位置启动代理?我需要倾倒东西吗?
我真的很感谢我能得到的所有帮助,谢谢:)
ant - 如何同时使用 Cobertura 进行单元测试和 JaCoCo 进行集成测试?
我正在将 Sonar 3.2 与 Ant 一起使用。我读过应该可以使用 Cobertura 进行单元测试分析和 JaCoCo 进行集成测试分析。但是,我还没有找到关于如何使用 Ant 执行此操作的明确指南。我已将代码覆盖引擎设置为 Cobertura,如下所示:
完成 Cobertura 分析后,我可以将其“重置”为 JaCoCo 吗?然后它会是这样的:
谢谢
ant - 使用 JaCoCo 的 Sonar IT 提供 0% 的代码覆盖率
我正在使用 Ant 在 RHEL6 机器上运行 Sonar Java 代码分析。对于集成测试分析,我使用 JaCoCo 插件进行声纳。我的库类路径中有插件。当我运行我的 Selenium 测试时,会生成一个“jacoco.exec”文件(10 次测试大约 1MB)。然后我在我的 Sonar Ant 目标中激活 Jacoco 插件并将其导入到 Sonar。声纳分析日志显示 Jacoco 文件已被分析(大约需要 5000 毫秒)。但是,My Sonar IT 小部件显示 0% 的代码覆盖率。我已经通过使用 Cobertura 成功获得了单元测试代码覆盖率。
我的测试目标:
我的声纳蚂蚁目标:
我试图只包括“相关”的东西。我不确定“jacoco:coverage”元素是否适用于 Selenium 测试,但在执行日志中它提到了“代理”,所以我假设代理在这里也用作 Java VM 上的代理。
我卡住了,请帮忙:)
更新 这里是声纳输出的一部分:
integration-testing - Jacoco-IntegrationTests 代码覆盖率
我无法克服这个问题——我有 3 个 AB 和 C 类。
A 是一个集成测试类,它同时测试 B 类和 C 类。
B 和 C 是另一个包中的类(wrt 类 A)
现在,当我运行集成测试类 A 时,我希望代码覆盖率显示 B 和 C 的哪些部分被覆盖。我没有得到所需的输出。
我得到的输出是没有检测类。
所以这两个类没有测试覆盖率......如果我在 src/main/java 中与 A 所在的相同模块中编写示例代码......它会识别该类并对其进行检测。
为什么它不能对其包之外的类做同样的事情。
请帮助。谢谢
java - Jacoco Mvn 插件未通过所有单元测试
我在这里感到困惑,我正在运行 maven 3、java 1.6 并配置了一个 maven 项目,一切正常,包括所有单元测试。现在我来添加 Jacoco 插件,这样配置
现在,当我尝试运行 mvn clean package 时,没有一个单元测试通过并且根本没有覆盖率报告。
谁能指出我哪里出错了?
提前致谢
selenium - 与 Cobertura 相比,用于 Sonar 中的集成测试的 JaCoCo 实际上如何工作?
Cobertura 首先 1) 检测要跟踪的源文件,2) 执行单元测试并将它们与检测的类进行比较。这样我们就可以计算代码覆盖率。
但是,使用 JaCoCo 进行集成测试(Selenium),我还没有在文档中看到这个“仪器化”阶段。JaCoCo 代理只是设置为在执行测试时动态跟踪“动态”覆盖的源代码。JaCoCo 怎么知道要比较什么源代码,因为代码没有像 Cobertura 那样事先被检测过?另外,如果我想排除一些源代码怎么办?
ant - Jacoco Agent 应该添加到执行测试的 JVM 中,还是添加到运行应用服务器的 JVM 中?
我正在检测针对 JBoss 服务器中的应用程序运行的 Selenium 测试。许多文档提到应该将 Jacoco 代理作为参数添加到 JVM。但是,它们没有说明它们是指运行 Selenium 测试的 JVM 还是运行 JBoss 应用服务器的 JVM。它们是完全不同的机器。那么,Jacoco 代理是否添加到:
谢谢。
selenium - 如何将 JaCoCo 代理附加到应用程序服务器
我正在使用 JBoss 并从 Jenkins 运行 Selenium 测试。我想测量 Selenium 测试的代码覆盖率,所以显然我应该将 JaCoCo java 代理附加到服务器。我已经这样做了:
但是,不会生成任何输出文件。我在这里指向 Jenkins 路径中的 jacocoagent.jar,但是否是 jacocoagent.jar 和 jacoco.exec 必须在实际的服务器路径中,而不是 Jenkins?
code-coverage - 非 web 服务模块的声纳 + jacoco 代理代码覆盖率
我正在尝试使用 JaCoCo 代理通过添加"-javaagent..."
到 Jetty 并运行外部 Selenium 测试(或例如手动测试)来收集网站的 FT 代码覆盖率。
在测试结束时,我只得到了 web 模块的结果,它实际上是在 Jetty 中运行的,而不是 web 模块中使用的“核心”模块(在同一个项目中)。那么,是否有能力收集项目所有模块的调用?
事实上,我现在尝试使用相同的 JaCoCo 报告目标(即)启动所有项目 Web 服务(它有 5 个)/tmp/jacoco-res.exec
,append=true
然后运行:
因此,sonar 现在为项目中的每个模块使用相同的JaCoCo 报告文件,并且 sonar 显示了 jetty-run 和核心模块的测试覆盖率。
这种方法是否适用并且覆盖结果是否正确?