Покрытие тестами ниже при использовании Lombok @BuilderJAVA

Программисты JAVA общаются здесь
Anonymous
Покрытие тестами ниже при использовании Lombok @Builder

Сообщение Anonymous »

У меня возникла проблема с тестовым покрытием с помощью аннотации @Builder Lombok.
У меня есть класс Java, аннотированный @Data Lombok, @AllArgsConstructor и @NoArgsConstructor:

Код: Выделить всё

import lombok.Data;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
private int id;
private String name;
}
и тестовый пример JUnit:

Код: Выделить всё

import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.*;

class UserTest {
@Test
void test() {
assertNotNull(new User());
}

}
Мой lombok.config настроен таким образом, что тестовое покрытие игнорируется в сгенерированном коде:

Код: Выделить всё

config.stopBubbling = true
lombok.addLombokGeneratedAnnotation=true
IntelliJ показывает покрытие класса тестами «100 % (0/0)». Это ожидаемо, поскольку весь код, сгенерированный Lombok, игнорируется.
Изображение

Когда я добавляю аннотацию @Builder к классу User, в отчете о покрытии отображается «0% (0/1)»:

Код: Выделить всё

import lombok.Data;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import lombok.Builder;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class User {
private int id;
private String name;
}
Изображение

Тестирование построителя с помощью AssertNotNull(User.builder().build()) не меняет тестовое покрытие.
IDE указывает, что строка с @Builder< /code> не охвачен тестами:
Изображение

Я использую следующую конфигурацию:
  • Lombok 1.18.34
  • Junit Jupiter 5.10.3< /li>
    IntelliJ IDEA Ultimate 2024.2.1
Почему покрытие меняется при добавлении новой аннотации ломбок?
Как добиться покрытия «100 % (0/0)» с помощью @Builder?
Полный проект для воспроизведения проблемы:https://github.com/jkronegg/lombok-builder-coverage

Подробнее здесь: https://stackoverflow.com/questions/789 ... ok-builder

Вернуться в «JAVA»