팀프로젝트 도중 Mock과 관련해서 궁금한 점
안녕하세요, 현재 SpringBoot + Kotlin으로 프로젝트를 진행중인 학생입니다. 팀프로젝트 도중 Mock과 관련해서 궁금한 점이 생겨 여러분의 의견이 듣고싶어 질문드립니다! 현재 팀에서 테스트 코드를 작성하기 위해 Mock을 사용하자는 의견이 있었습니다. 이전에도 잠깐 사용해봤었지만, Mock의 장점은 명확했습니다. 제가 느낀 장점은 '테스트를 다른 의존성으로부터 독립적인 환경을 만들기 때문에 다른 객체에서 생기는 문제를 본 객체에 영향을 주지 않는다.' 그리고, 'Spring에 의존적이지 않으므로 테스트 속도가 빠르다.'라는 장점이 있었습니다. 하지만 단점도 명확했습니다. 모의 객체는 행동의 결과 값을 직접 지정해 줘야 합니다. 다시 말해 Mock객체는 실제 객체가 아닌 개발자가 임의로 지정한 값을 뱉어줄 뿐이므로 이를 잘못 예측한다면 테스트는 성공함에도 불구하고 서비스에서는 에러가 날 수 있습니다. 여기서 의문점이 생겼습니다. '사용자가 환경을 다 정해주는 테스트인데 이 테스트가 의미가 있는 건가?' 혹시 여러분 생각은 어떠신가요? 다양한 의견 부탁드립니다!! 감사합니다.
Loading...