Search
Duplicate
🎭

Dummy

태그
가장 기본적인 테스트 더블이다.
인스턴스화 되었지만 객체가 필요하지만 내부 메소드는 필요하지 않은 경우에 사용한다.
메소드가 호출되었을때 정상 동작을 보장하지 않는다.
인스턴스화된 객체가 필요해 구현한 가짜 객체일 뿐이고 생성된 Dummy 객체는 정상적인 동작을 보장하지 않는다.
public interface Human { String getName(); int getAge(); } public static class DummyHuman implements Human { @Override public String getName() { return "John"; } @Override public int getAge() { return 20; } } @Test public void dummyTest() { Human human = new DummyHuman(); assertThat(human.getName()).isEqualTo("John"); assertThat(human.getAge()).isEqualTo(20); }
Java
복사
실제 서비스에서 객체는 Human 인터페이스를 구현한 구현체를 필요로하지만 해당 구현이 필요로하지 않는 특정 구현체에선 사용 가능하다.
이처럼 동작하지 않아도 테스트에 영향을 미치지 않는 객체를 Dummy 객체라고 한다.