Mock과 Spy는 테스트 더블(대역)이다. Test Double은 테스트를 목적으로 프로덕션 오브젝트를 대체하는 오브젝트를 뜻한다. ‘Test Double’이라는 말 때문에 처음에는 잘 이해가 되지 않았는데 영어권에서는 스턴트 맨을 스턴트 더블이라고 한단다. 그러니까 테스트 더블은 말하자면 테스트를 목적으로 진짜 오브젝트를 대신하는 테스트 계 스턴트맨이라고 볼 수 있다. Mock Mock은 가짜 오브젝트다. ‘가짜 오브젝트’란 뭘까? 간단한 Post 클래스를 작성해서 예시를 들어본다. class Post( val id: Long? = null, val title: String, val content: String, ) { fun create(title: String, content: String) { ..