我在我的 Java 项目中使用 lombok
,用 @Getter
和 @Setter
注释来注释我的对象的私有(private)成员变量。我们知道那些 getter 和 setter 会按预期工作。所以我们真的不需要对它们进行单元测试。但是,这会降低单元测试中代码的代码覆盖率
。
有没有办法告诉单元测试引擎不需要测试lombok生成的getters和setters?
最佳答案
从 Lombok 1.16.14 开始,所有生成的方法都将使用 @lombok.Generated
进行注释。
您可以从 Cobertura 测试报告中排除它们:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.7</version>
<configuration>
<instrumentation>
<ignoreMethodAnnotation>lombok.Generated</ignoreMethodAnnotation>
</instrumentation>
</configuration>
</plugin>
披露:我是 Lombok 开发人员。
注意。此时,Lombok 1.16.14 还没有发布。您可以下载edge release虽然包含此修复程序。
关于用于 getter setter 的 Java lombok 单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41726618/