테스트 더블이란
특정 모듈에 의해 테스트의 진행이 어려울 때, 테스트를 진행할 수 있도록 본 모듈을 대체하는 모듈
테스트 더블 유형
Dummy
객체 자체가 필요하지만 객체가 어떤 동작을 수행하든 상관이 없는 경우 사용 가능
호출 시 어떤 동작을 할지 보장하지 않음
Fake
실제와 동일한 역할을 수행하지만 실제 객체보다 단순하게 동작
Stub
호출 시의 응답을 정해둘 수 있는 Dummy
호출 시 미리 준비해둔 결과를 제공
Spy
일부는 실제 기능을 호출하고 일부는 가짜(정해둔 결과)를 제공받고자 할 때 사용
Mock
특정 조건의 호출이 일어나면, 그에 따라 정해진 동작을 처리하도록 미리 프로그래밍된 객체
Stub은 객체의 상태 검증을 위해 사용되며, Mock은 객체의 동작(행위) 검증을 위해 사용됨
Last updated