Как создать модульный тест, который должен завершиться с ошибкой или выдать ошибку / исключение при добавлении нового свойства в DTO?
Для случая приведенное ниже преобразование из сущности в dto со следующей реализацией:
//my entity
public class SampleEntity {
private AnotherObject property1;
private AnotherPropertyObject property2;
}
//my dto
public class SampleDTO {
private String anotherObjectName;
private String anotherPropertyObjectName;
}
Мой метод, который переводит сущность в DTO
//service
public SampleDTO translateEntityToDTO(SampleEntity entity) {
SampleDTO dto = new SampleDTO();
//uses toString for sample and simplicity
dto.setAnotherObjectName(entity.getProperty1().toString());
dto.setAnotherPropertyObjectName(entity.getProperty2().toString());
return dto;
}
Длямои утверждения модульного теста, скорее всего, будут выглядеть как
//start of test
SampleDTO expected = service.translateEntityToDTO(sampleEntity);
//asserttions
expected.getAnotherObjectName().isEqual(sampleEntity.getProperty1().toString())
expected.getAnotherPropertyObjectName().isEqual(sampleEntity.getProperty2().toString());
А что, если я добавлю новое свойство в мой SampleDTO?Теперь я вижу, что любое добавление свойства к DTO останется незамеченным с точки зрения модульного тестирования, без ошибок / исключений и / или неудачных тестов.
Это какое-тоограничения модульного тестирования или есть обходной путь для этого?