У меня есть класс, который использует XStream и используется в качестве формата передачи для моего приложения. Я пишу тесты для других классов, которые сопоставляют этот формат передачи с другим стандартом обмена сообщениями. Я хотел бы убедиться, что все геттеры в моем классе вызываются в тесте, чтобы убедиться, что при добавлении нового поля мой тест правильно проверяет его.Убедитесь, что все методы getter были вызваны в тесте JUnit
Грубый набросок класса XStream
@XStreamAlias("thing")
public class Thing implements Serializable {
private int id;
private int someField;
public int getId(){ ... }
public int someField() { ... }
}
Так что теперь, если я обновлю этот класс будет:
@XStreamAlias("thing")
public class Thing implements Serializable {
private int id;
private int someField;
private String newField;
public int getId(){ ... }
public int getSomeField() { ... }
public String getNewField(){ ... }
}
Я хочу, чтобы мой тест на неудачу, потому что старые тесты не вызывая getNewField()
,
Целью является обеспечение того, чтобы при добавлении новых геттеров у нас был некоторый способ гарантировать, что тесты проверяют их.
В идеале это будет полностью содержаться в тесте и не требует модификации базового класса Thing.
Любые идеи? Спасибо, что посмотрели!
Простой. Не проверяйте методы получения. Они «слишком просты» для тестирования. – Pyrolistical