首页 > 其他分享 >jacoco代码覆盖率

jacoco代码覆盖率

时间:2024-01-15 10:03:54浏览次数:15  
标签:插件 报告 覆盖率 代码 Jacoco 生成 jacoco

JaCoCo是一个开源的代码覆盖率工具,针对的语言为java。它可以嵌入到Ant、Maven中,也可以作为Eclipse插件使用。 Jacoco主要通过代码注入(即Java Agent)方式来实现覆盖率的功能。

代码覆盖率一般分为单元测试覆盖率和功能测试覆盖率,对于开发人员,一般比较关注单元测试覆盖率,而对于测试人员,一般更关注的是功能测试覆盖率。

如何使用Jacoco进行代码覆盖率分析?

配置 Jacoco 插件:如果你使用的是 Maven 或 Gradle 等构建工具,你需要在项目的构建文件中添加 Jacoco 插件的配置。这将使构建过程中能够生成代码覆盖率信息。
编写测试用例:为了进行代码覆盖率分析,你需要编写足够的测试用例来覆盖你希望分析的代码。
执行测试:在配置了 Jacoco 插件的构建环境中,运行你的测试用例。这将触发 Jacoco 来收集代码覆盖率数据。
生成覆盖率报告:构建完成后,Jacoco 将生成代码覆盖率报告。你可以通过构建工具或命令行指定相应的参数来生成报告。
查看报告:使用生成的代码覆盖率报告,你可以查看哪些代码被覆盖了,哪些代码没有被覆盖。报告通常会提供不同级别的覆盖率统计,如行覆盖率、类覆盖率和方法覆盖率。


如何在项目中添加Jacoco插件的配置?

在Gradle项目中添加Jacoco插件的配置的步骤如下:

  1. 在build.gradle的文件的底部,添加jacoco插件,并指定其版本使用0.8.5(查看其他可选版本)。
  2. 指定允许生成html格式的报告。
  3. 指定在测试运行之后来自动生成报告。
  4. 在工程根目录下执行如下命令./gradlew clean build,运行结束后,会在项目根目录下的build/reports/jacoco生成覆盖率报告文件。

如何在IntelliJ IDEA中查看代码覆盖率报告?

在 IntelliJ IDEA 中,你可以通过以下方式查看代码覆盖率报告:

  • 选择要显示的套件,并在编辑器中打开类。在主菜单上选择"分析|显示代码覆盖率数据(Analyze | Show Code Coverage Data)"。
  • 按"Ctrl+Alt+F6"。

在"项目"工具窗口中,你可以在"专用覆盖范围"工具窗口中查看覆盖率结果。在编辑器中打开你想要浏览的文件,使用左侧装订线中的颜色指示器来检测未发现的代码行。要了解行的命中次数,请单击装订线区域中的线条。

此外,你还可以使用以下工具栏按钮来操作:

  • "跳到下一组/以前的覆盖或未覆盖的线组"。
  • "查看在插入符号处覆盖该行的 JUnit 测试"。在插入符号中覆盖该行的测试显示在弹出窗口中,此按钮仅在跟踪模式下可用,并且选中了"每个测试覆盖率的跟踪"复选框。
  • "在弹出窗口中显示当前类的字节代码"。此按钮仅在与产品捆绑在一起的字节代码查看器插件启用时才可以使用。
  • "打开配色方案设置,你必须选择节点线覆盖范围"。
  • "隐藏覆盖率信息"。

标签:插件,报告,覆盖率,代码,Jacoco,生成,jacoco
From: https://blog.51cto.com/u_11920995/9248453

相关文章

  • .NET Conf China 2023分享-.NET应用国际化-AIGC智能翻译+代码生成
    今年.NETConfChina2023技术大会,我给大家分享了.NET应用国际化-AIGC智能翻译+代码生成的议题,今天整理成博客,分享给所有人。随着疫情的消退,越来越多的企业开始向海外拓展,应用系统的国际化和本地化是一个巨大的技术挑战,我们今天重点探讨以下内容:.NET应用如何实现国际化?不仅仅......
  • 干掉过多的 if else,让你的代码更优雅
    干掉过多的ifelse,让你的代码更优雅学习改变命运,技术铸就辉煌。大家好,我是銘,全栈开发程序员。写代码时候,有时候条件过多,会有很多ifelse,代码看起来很乱,不够优雅,那如何让代码更优雅呢,如何让代码可读性更强呢,那銘哥就来教你怎么做。注意啊,是过的if-else,如果只是三四个,那就没必......
  • 干掉过多的 if else,让你的代码更优雅
    干掉过多的ifelse,让你的代码更优雅学习改变命运,技术铸就辉煌。大家好,我是銘,全栈开发程序员。写代码时候,有时候条件过多,会有很多ifelse,代码看起来很乱,不够优雅,那如何让代码更优雅呢,如何让代码可读性更强呢,那銘哥就来教你怎么做。注意啊,是过的if-else,如果只是三四个,那......
  • 源生成器:根据需要自动生成机械重复代码
    title:源生成器:根据需要自动生成机械重复代码date:2022-02-02tags:-C#-.NET-Roslyn前言本文概述了利用.NETCompilerPlatform(“Roslyn”)SDK附带的源生成器(SourceGenerator)自动生成机械重复的代码。关于这部分的基础入门知识可以在MSDN[1]学到。本文默认已经有一......
  • C#与C++代码的互操作方式
    title:C#与C++代码的互操作方式date:2024-01-10categories:编程tags:-C#-.NET-C++-COM-平台调用大致介绍在写C#程序时经常有与本地代码(C/C++)代码交互的需求。微软提供了许多种方式供我们选择,最常用的有以下三种(A->B指A可以引用B):flowchartLRA--P/Invoke......
  • 折腾物料代码
    问题:物料代码最后点后是三位数保留原状,最后点后是有效四位数保留原状,后四位不满千的保留三位。函数公式解决:=TEXTBEFORE(C2,".",-1)&"."&TEXT(TEXTAFTER(C2,".",-1),"000")TextBefore():提取从右往左数第一个点之前的内容&"."&:与点连接,再连接后面的内容Text():将数字格式......
  • php代码审计(三)bluecms练习
    BlueCMSv1.6sp1ad_js.phpSQL注入漏洞环境搭建源码下载:https://jwt1399.lanzoui.com/inPwSde6c5a将upload下的文件移动到网站根目录下访问/install,安装程序,配置基本信息seay自动审计定位到第一条的位置/ad_js.php全代码通读,首先是包含了文件/include/common.inc.php,查看......
  • JUC并发编程 CompletableFuture 业务代码实战
    1需求电商网站比价需求分析:1.1需求说明:a.同一款产品,同时搜索出同款产品在各大电商平台的售价b.同一款产品,同时搜索出本产品在同一个电商平台下,各个入驻卖家售价是多少1.2输出返回:a.出来结果希望是同款产品的在不同地方的价格清单列表,返回一个List例如:《Mysql》......
  • 【代码复现(吐槽向)】Revisiting a Methodology for Efficient CNN Architectures in Pr
    【论文写不出来,痛苦中】这篇文章是我看到框架最简单,效果最好的对于公开数据集的攻击没有之一。代码:KULeuven-COSIC/TCHES20V3_CNN_SCA(github.com)吐槽:1坑:TF的版本问题,有了torch,谁用TF,但是偏偏GITHUB上所有的SCA的代码都是TF写的,还有丧心病狂TF1.x,版本安装几十年,不如选一个服......
  • # yyds干货盘点 # 盘点一个AI解答疑难代码的问题
    大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas代码解读的问题,问题如下:df_in=df[df['入/出'].eq('入')],我也不懂eq啥意思?感觉这代码还可以写成df[df['入/出']=='入'],这两段一个意思吧。答:eq就是=,就是你说的这个。二、实现过程后来【论草莓如......