在运行时转储执行数据

2024-01-30

我正在使用 JaCoCo 生成代码覆盖率报告,并且我有许多场景需要生成单独的报告。问题是该程序非常庞大,大约需要 2 分钟才能启动并加载所有类文件。

我想在其中一个场景完成后立即获取运行时的执行数据,然后开始下一个场景,而不是为每个场景重新启动服务器。

有办法这样做吗?


以下所有内容均摘自 JaCoCo 官方文档:http://www.jacoco.org/jacoco/trunk/doc/ http://www.jacoco.org/jacoco/trunk/doc/

Java 代理描述于http://www.jacoco.org/jacoco/trunk/doc/agent.html http://www.jacoco.org/jacoco/trunk/doc/agent.html有选择output:

  • file:VM 终止时,执行数据将写入 destfile 属性中指定的文件中。
  • TCP服务器:代理侦听地址和端口属性指定的 TCP 端口上的传入连接。执行数据为 写入此 TCP 连接。
  • TCP客户端:启动时,代理连接到由地址和端口属性指定的 TCP 端口。执行数据为 写入此 TCP 连接。

和选项jmx:

如果设置为 true 代理会公开功能性 http://www.jacoco.org/jacoco/trunk/doc/api/org/jacoco/agent/rt/IAgent.html via JMX

通过 JavaDoc 中描述的 JMX 功能公开,提供了以下三种方法:

byte[] getExecutionData(boolean reset)返回当前执行数据。

void dump(boolean reset)通过配置的输出触发当前执行数据的转储。

void reset()重置所有覆盖范围信息。

再次从文档中还有 Ant Taskdump - http://www.jacoco.org/jacoco/trunk/doc/ant.html http://www.jacoco.org/jacoco/trunk/doc/ant.html:

此任务允许从另一个 JVM 远程收集执行数据,而无需停止它。 远程转储对于长时间运行的 Java 进程(如应用程序服务器)非常有用。

dump命令行界面中的命令 -http://www.jacoco.org/jacoco/trunk/doc/cli.html http://www.jacoco.org/jacoco/trunk/doc/cli.html

dump目标jacoco-maven-plugin - http://www.jacoco.org/jacoco/trunk/doc/dump-mojo.html http://www.jacoco.org/jacoco/trunk/doc/dump-mojo.html

API使用示例 http://www.jacoco.org/jacoco/trunk/doc/api.html包括:

  • MBeanClient.java 此示例连接到覆盖代理来收集 通过 JMX 执行数据。
  • ExecutionDataClient.java 这个例子 连接到覆盖代理以通过远程收集执行数据 协议。
  • ExecutionDataServer.java 此示例启动套接字服务器 通过远程协议从代理收集执行数据。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在运行时转储执行数据 的相关文章

  • Android JUnit:定义不同的应用程序子类

    因此 对于我的普通 Android 项目 我在 AndroidManifest xml 中有以下内容
  • Jenkins Cobertura 插件“源代码不可用”

    我在用着詹金斯版本 1 466 with Jenkins Cobertura 插件版本 1 5 我为 Django 项目生成了覆盖率报告 所有图表看起来都不错 但是当我想查看源代码时 我收到警告消息 Source code is unava
  • 衡量代码质量时的代码行 VS 指令

    我有一个由许多模块组成的项目 我正在运行两者JaCoCo http www eclemma org jacoco 对于单元测试覆盖率和Sonar https www sonarqube org 为了代码质量 由于技术原因 我无法对我的模块之
  • 如何使用Android Studio获取代码覆盖率?

    我正在使用 Android Studio 开发应用程序 我能够运行测试代码 但是 我不知道如何在 android studio 中获得代码覆盖率 我已经看过以下链接 Android Gradle 代码覆盖率 https stackoverf
  • 如何使用 xdist 和 django_coverage_plugin 并行 pytest 运行覆盖率报告

    使用以下设置 计算出的覆盖率小于使用没有并行化的单线程的覆盖率 Coverage 仅在项目根目录中创建 1 个覆盖文件 我预计这就是问题所在 我无法确定我做错了什么 报告的覆盖范围比我简单地运行要少coverage m pytest 在单线
  • 如何测试不太可能发生的并发场景?

    例如 这样的地图访问 func pool fPool fetch url string ResultPromise pool cacheLock RLock if rp pres pool cache url pres pool cache
  • 将 JaCoCo 与 SONAR 集成以实现单元和集成测试覆盖

    有没有人尝试使用 ANT 构建配置 JaCoCo 将单元测试和集成测试的覆盖范围转储到 2 个不同的文件中 以便 SONAR 使用它们 这是一个可行的解决方案 为单元测试和集成测试生成报告 该解决方案使用的是append战略 请注意 为了在
  • jacoco 的准备代理不生成 jacoco.exec 文件

    我正在运行 Jacoco 的 Maven 插件 这prepare agent目标运行良好 但不生成jacoco exec由于某种原因归档 随后report目标抱怨Skipping JaCoCo execution due to missin
  • VSTS 中 .NET Core 项目的代码覆盖率和测试结果

    如何在 VSTS 中启用 NET Core 项目的代码覆盖率和测试结果 目前 尚未为 NET Core 测试任务启用它 这是一个答案的一半 因为我不喜欢代码覆盖率 首先得到dotnet test通过传递参数来输出包含测试结果的 trx 文件
  • 如何在不使用 Maven 的情况下将 Jacoco 报告与 SonarQube 集成?

    我使用 Jacoco eclipse 插件来测量单元测试覆盖率 并且我能够使用它导出报告 我想将该报告与声纳集成 因此我在项目属性文件中给出了它的路径 我的属性文件如下所示 Required metadata sonar projectKe
  • 记录执行的java代码的行数

    我正在编写 PHP Web 应用程序的一部分 将在高中错误查找竞赛中使用 用户必须在给定的 Java 程序中查找错误 作为其中的一部分 当 Java 程序执行时 我们希望突出显示已执行代码的 Java 程序源代码行 为此 我们需要的是已执行
  • 通过更改 build.xml 和 ant.properties 生成 Android 代码覆盖率

    我一直在尝试为我的 android 测试项目生成 android 代码覆盖率 该项目测试包含外部 jar 的 android 项目 当我运行命令时 ant emma install debug test 它仅显示了 android 项目的覆
  • 如何让VS忽略Test dll的代码覆盖率

    目前 当我运行代码覆盖率分析时 报告的覆盖率为 90 问题是 另外 10 是实际测试的代码 我怎样才能让VS忽略该测试代码而只考虑实际代码 您可以在项目中添加运行设置文件 在该文件中 您可以提及需要从代码覆盖率中排除的 DLL 名称
  • 有哪些工具可用于使用浏览器自动化测试来计算代码覆盖率

    我有一个用 ASP NET MVC 3 编写的网站 我已经整理了一些针对该网站的浏览器自动化测试 我想使用同一组测试来计算网站代码的代码覆盖率 我知道 NCover 会做这种工作 但据我所知 有两个问题 第一 NCover 给出了框架代码和
  • 运行 Maven Surefire 测试插件 Java 11 时出错

    我正在使用 Maven Surefire 插件版本 2 22 1 在 Team City 中运行 Spring Boot 应用程序的一些测试 Spring Boot 版本是 2 1 2 我在配置中指定使用分叉的 Java 11 jvm 如下
  • lambda 函数的代码覆盖率

    我有以下带有 lambda 函数的代码 obj method param gt code here 如何通过测试覆盖 lambda 函数中的代码 您可以使用反射 但这可能容易出错并且适得其反 我建议你调用使用 lambda 的方法
  • 如何诊断这些 PHP 代码覆盖分段和 zend_mm_heap 损坏错误

    我一直很高兴在我的 Ubuntu 机器上编码 这是一台拥有大量内存的强大机器 我正在研究 4 个新课程 一边编写和运行单元测试 在某些时候 我注意到 虽然单元测试完成得很好 但代码覆盖率却没有 在消息 正在生成代码覆盖率报告 等 之后 我会
  • Scala 的代码覆盖率工具 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 声纳中的代码覆盖率和线路覆盖率有什么区别

    我知道行覆盖率和分支覆盖率有什么区别 但是代码覆盖率和行覆盖率有什么区别 以前的指令覆盖吗 覆盖范围是线路覆盖范围和分支覆盖范围的微妙组合 您可以在我们的网站上找到公式指标描述页面 https docs sonarqube org late
  • Jenkins 的代码覆盖率 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi

随机推荐

  • Math.round 的实施速度更快?

    这段代码有什么缺点吗 它似乎是更快 并且正确 的版本java lang Math round public static long round double d if d gt 0 return long d 0 5d else retur
  • Spark 2.3 AsyncEventQueue 错误和警告

    我正在运行内存密集型代码 其中创建了一个管道 其中包括 使用 Shimazaki 和 Shinomoto 的 Bin Width 算法找到最佳的 bin 值数量 通过使用上面找到的相应 bin 值对同一列进行分桶来创建新列 通过 8 个顺序
  • 类型安全的矩形多维数组类型

    你如何代表一个矩形的Scala 中的二维 或多维 数组数据结构 也就是说 每行的长度相同 编译时验证 但是尺寸是在运行时确定的 Seq Seq A 具有所需的接口 但它允许用户提供 参差不齐 的数组 这可能导致运行时失败 Seq A A A
  • 如何在 ASP.NET 应用程序中有效地缩放和裁剪图像?

    我们在使用允许用户上传和裁剪图像的 ASP NET 应用程序时遇到问题 之后图像全部缩放为固定尺寸 当处理大文件时 我们基本上会耗尽内存 看来 JPEG 的处理效率相当低 我们正在使用 System Drawing BitMap 您有什么一
  • Windows Phone 8 模拟器网络问题

    首先 我承认我是Windows Phone 8应用程序的新手 所以不要对它评价太低 所以请原谅我 我已经创建了 WCF 服务 我得到了结果 但是当我在 Windows Phone 中运行时 它返回错误 System ServiceModel
  • 使用 JQuery ajax 在 DOM 操作后附加事件

    如何使用 ajax 响应操作 dom 后附加所有事件 我有一个ajax请求 它得到一个html响应 它基本上是html的一个片段 该 HTML 片段有很多按钮 我想刷新 dom 以便先前声明和附加的事件也应用到该片段中 我不想继续使用 jq
  • 在服务器上使用javascript写入二进制数据

    我正在尝试使用服务器端 javascript ASP 输出 PDF 我当前使用的方法是 xfile Server MapPath lib fso GetTempName xf lib fopen xfile wb lib fwrite xf
  • 将只读依赖属性数据绑定到 Xaml 中的 ViewModel

    我正在尝试对按钮进行数据绑定IsMouseOver 只读依赖属性到我的视图模型中的布尔读 写属性 基本上我需要按钮IsMouseOver要读取到视图模型属性的属性值
  • 为什么简写 PHP 开头语句不起作用? [复制]

    这个问题在这里已经有答案了 我正在尝试将我的 Mac 设置为 php 服务器 但是 尽管到目前为止我已经取得了成功 但我似乎遇到了一些麻烦 我的 PHP 开头语句不起作用 但只有速记语句 这有效 这不会 这是Mac 10 5 希望有人可以提
  • java.lang.IllegalArgumentException:协议= http主机= null

    对于这个链接这段代码不起作用 但如果我添加另一个例如 https www google com https www google com一切都好 URL url new URL http bits blogs nytimes com 201
  • Java在空分隔符上分割字符串在开头返回空字符串?

    我想将一个字符串拆分为单个字符 所以我这样做 abcd split 但这会产生 a b c d 在其他语言 例如 Ruby 中执行相同操作时 我不习惯使用第一个空字符串 其背后的逻辑是什么 你为什么使用String split 为了这 使用
  • 有没有办法在 PHP 中使用 FPDF 创建的 pdf 文件中隐藏页眉和页脚?

    我在 PHP 中使用 FPDF 创建了一个 pdf 文件 当我在其中插入页眉和页脚时 它们会自动显示在 pdf 文件的所有页面上 但我想阻止这些页眉和页脚显示在第一页上 并从 pdf 文件的第二页开始显示它们 我已经搜索过网络但无法找到解决
  • 可写选择框

    寻找一个 Jquery 插件 这样我就可以有一个包含可写选项的选择框 因此 使用 javascript 将选择框与输入字段合并 我认为这将是一个相当常见的要求 有人知道这样的插件吗 Thanks 使用 SELECT 是不可能的 而是我使用自
  • 数据透视表返回带有 NULL 的多行,未分组在一行上

    这是我的原始数据 CustomConfigName ColumnNumber ColumnName groupingID Value SAPTotals 1 Batch Reference 35 BATCH001 SAPTotals 2 B
  • maven-dependency-plugin 目标/类 - 访问被拒绝

    我有一个多模块项目 其中有一个父项目 A 以及两个子项目 B 和 C 项目 B 依赖于项目 C 我使用 maven dependency plugin 将 B 的依赖项复制到目标 目录 因此 我可以使用 maven assemble plu
  • Amazon S3 CORS 标头仅在 OPTIONS(预检)期间显示,在 GET 请求期间不显示

    我有一个具有以下 CORS 配置的 S3 存储桶
  • 如何安装 django-ckeditor?

    Stack Overflow 上有两个问题这位编辑 http pypi python org pypi django ckeditor 却没有人回答 所以我问如何将此 Django 包安装到我的项目中 我已经关注了这些步骤 http pyp
  • 为什么 object.constructor 是一个“函数”,而不是 TypeScript 中的“可更新”?

    在 TypeScript 中 我通常使用以下方式定义类类型的类型 declare type Type new args any any 例如 当类作为参数传递时可以使用它 这有点类似于Type是用C 编写的 但也可以直接实例化new操作员
  • 使用授权标头(Bearer)设置 Swagger (ASP.NET Core)

    我有一个 Web API ASP NET Core 我正在尝试调整 swagger 以从中进行调用 调用必须包含授权标头 并且我正在使用承载身份验证 来自 Postman 等第三方应用程序的呼叫一切正常 但我在设置 swagger 标头时遇
  • 在运行时转储执行数据

    我正在使用 JaCoCo 生成代码覆盖率报告 并且我有许多场景需要生成单独的报告 问题是该程序非常庞大 大约需要 2 分钟才能启动并加载所有类文件 我想在其中一个场景完成后立即获取运行时的执行数据 然后开始下一个场景 而不是为每个场景重新启