排除Lombok @Builder随附的toString方法

问题描述

根据此Lombok documentation,使用 @Builder 注释类可以产生7件事,其中之一是“ 明智的toString”。 ()实施

在我正在研究的项目中,这种认的 toString() 方法实际上引起了一些麻烦, jacoco report 考虑了该方法没有经过测试,实际上没有经过测试,因为我并不是故意拥有 toString()方法

有没有一种方法可以避免生成认的 toString()方法,如果可以,怎么办?

任何想法或见识将不胜感激。

解决方法

我认为您无法删除toString(),但是您始终可以对其进行测试并验证是否没有nullPointerException宝座。

如果您的类中包含np方法,则最好将此类添加为一个例外,并且默认情况下对日志进行了测试,并且代码中没有特定的逻辑。

,

很遗憾,无法从生成的构建器中排除 toString()

但是您可以将 lombok 配置为生成将被​​ JaCoCo 忽略的代码。不仅将 toString() 方法排除在测试代码覆盖范围之外,而且排除 lombok 生成的所有 getter、setter、builder 和其他人员也很有用。

  1. lombok.config 文件添加到您的根项目目录中
  2. 在其中添加以下几行:
        config.stopBubbling = true
        lombok.addLombokGeneratedAnnotation = true
  1. 重建您的项目

您可以在此处找到有关配置 lombok 的更多详细信息:https://projectlombok.org/features/configuration