热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何从IntelliJIDEA中的覆盖率测量中排除源代码?

如何解决《如何从IntelliJIDEA中的覆盖率测量中排除源代码?》经验,为你挑选了1个好方法。

在一个项目中,我有一个Utility类,如下所示:

public final class Util {
    private Util() {}
    public static String method1(InputStream in) {...}
    public static String method2(BufferedReader in) {...}
    public static String method3(File file) {...}
}

类是在它所包含的意义上的实用工具类唯一static方法.因此它被声明final并且它的构造函数是private.创建实例或派生子类根本没有任何意义.

我有一套测试项目的单元测试.我正在使用IntelliJ IDEA来运行测试,测量和可视化代码覆盖率.实用程序的构造函数class Util现在降低了覆盖率.我希望看到100%的100%逻辑覆盖率.像Utility类的私有构造函数这样的代码会降低覆盖率.

是否有可能(最好通过注释)将方法或构造函数标记为与代码覆盖无关,以便从覆盖率报告中排除此类代码,从而显示100%的覆盖率?

我知道,一般来说,覆盖率报告中的隐藏代码对您自己不利.我不介意报告是否会有一个"被忽略的项目"列表 - 实际上,这将是好的,检查是否有人忽略了不应忽略的东西.关键在于覆盖范围没有意义的代码,就像Utility类的私有构造函数一样.

我试图找到是否annotations.jar包含候选人.唯一一个看起来就像它可以做到的那样的注释是TestOnly,但它不能实现这个目的.我也偷看了,plugins/coverage/lib/*.jar找不到候选人,但也许我只是错过了?



1> Peter Lawrey..:

enum用于实用程序类,大多数覆盖工具都知道忽略它的方法.

public enum Util { ;

enumfinalprivate默认的构造函数.


与此同时,JetBrains甚至实施了"Utility class should a enum"作为检查.他们有多好 :)
推荐阅读
  • Ivecreatedgwtprojectusingmavenplugin:我使用maven插件创建了gwt项目:mvn-DarchetypeGroupIdorg.codehau ... [详细]
  • IntelliJ代码的字符串引号花样设置
    出发点最近在开辟一个Angular小项目,运用了tslint,我运用了单引号限定。然则IntellijWebstorm的自动引入默许是双引号(double)。IntelliJ+ID ... [详细]
  • SpringBoot底层注解用法及原理
    2.1、组件添加1、Configuration基本使用Full模式与Lite模式示例最佳实战配置类组件之间无依赖关系用Lite模式加速容器启动过程,减少判断配置类组 ... [详细]
  • 本文将详细介绍如何配置并整合MVP架构、Retrofit网络请求库、Dagger2依赖注入框架以及RxAndroid响应式编程库,构建高效、模块化的Android应用。 ... [详细]
  • Java中List的forEach方法与字符串拼接的兼容性问题
    本文深入探讨了在Java中使用List的forEach方法时遇到的字符串拼接问题,提供了有效的解决方案及背后的原理分析,旨在帮助开发者更好地理解和解决此类问题。 ... [详细]
  • Java虚拟机及其发展历程
    Java虚拟机(JVM)是每个Java开发者日常工作中不可或缺的一部分,但其背后的运作机制却往往显得神秘莫测。本文将探讨Java及其虚拟机的发展历程,帮助读者深入了解这一关键技术。 ... [详细]
  • 本文基于Java官方文档进行了适当修改,旨在介绍如何实现一个能够同时处理多个客户端请求的服务端程序。在前文中,我们探讨了单客户端访问的服务端实现,而本篇将深入讲解多客户端环境下的服务端设计与实现。 ... [详细]
  • 本文详细介绍了如何使用C#实现不同类型的系统服务账户(如Windows服务、计划任务和IIS应用池)的密码重置方法。 ... [详细]
  • 1、编写一个Java程序在屏幕上输出“你好!”。programmenameHelloworld.javapublicclassHelloworld{publicst ... [详细]
  • 在Android中实现黑客帝国风格的数字雨效果
    本文将详细介绍如何在Android平台上利用自定义View实现类似《黑客帝国》中的数字雨效果。通过实例代码,我们将探讨如何设置文字颜色、大小,以及如何控制数字下落的速度和间隔。 ... [详细]
  • 本文详细探讨了在Java中如何将图像对象转换为文件和字节数组(Byte[])的技术。虽然网络上存在大量相关资料,但实际操作时仍需注意细节。本文通过使用JMSL 4.0库中的图表对象作为示例,提供了一种实用的方法。 ... [详细]
  • 深入解析C++ Atomic编程中的内存顺序
    在多线程环境中,为了防止多个线程同时修改同一数据导致的竞争条件,通常会使用内核级同步对象,如事件、互斥锁和信号量等。然而,这些方法往往伴随着高昂的上下文切换成本。本文将探讨如何利用C++11中的原子操作和内存顺序来优化多线程编程,减少不必要的开销。 ... [详细]
  • 本文详细介绍了在PHP中如何获取和处理HTTP头部信息,包括通过cURL获取请求头信息、使用header函数发送响应头以及获取客户端HTTP头部的方法。同时,还探讨了PHP中$_SERVER变量的使用,以获取客户端和服务器的相关信息。 ... [详细]
  • 本文探讨了如何选择一个合适的序列化版本ID(serialVersionUID),包括使用生成器还是简单的整数,以及在不同情况下应如何处理序列化版本ID。 ... [详细]
  • 本文探讨了如何利用 Android 的 Movie 类来展示 GIF 动画,并详细介绍了调整 GIF 尺寸以适应不同布局的方法。同时,提供了相关的代码示例和注意事项。 ... [详细]
author-avatar
262610
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有