강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

counterchord89님의 프로필 이미지
counterchord89

작성한 질문수

Spring Boot TDD - 입문부터 실전까지 정확하게

내부 설계에 의존하는 테스트 작성

내부 설계에 의존하는 테스트 관련 질문 드립니다.

작성

·

6

0

강의를 들으면서 내부 설계에 의존하는 테스트라는 것이 무엇인지 조금 헷갈려서 질문 드립니다.

 

강의 초반에는 테스트가 내부 설계에 의존해서는 안된다고 말씀 주셨습니다. 내부 설계에 의존하게 되면 테스트가 깨지는 등의 부작용이 발생할 수 있기 때문이라는 점도 함께 말씀 주셨는데,

 

이번 강의에서는 내부 설계에 의존해야 하는 케이스를 설명 해주셨습니다.

 

다만 왜 이런 케이스에는 내부 설계에 의존해야 하는지를 확실하게 이해를 하지 못했습니다.

 

조금 더 자세한 질문을 드리자면

  1. 내부 설계의 의미

  2. 내부 설계에 의존해야 하는 이유

이 두가지를 잘 이해하지 못한 것 같습니다.

내부 설계라는 것이 클라이언트가 실제로 사용하는, 외부로 공개된 인터페이스를 제외한 모든 부분을 말하는 것일까요?

 

이번 강의에서 내부 설계에 의존해야 하는 이유는

  1. 클라이언트는 어떤 방식으로 암호화를 하는지 알 필요가 없다.

  2. 하지만 현재 공개된 인터페이스로는 실제 비밀번호가 평문으로 저장이 되었는지, 아니면 정말 암호화가 이루어져 저징이 되었는지를 확인할 수 있는 방법이 없다.

  3. 그러므로 실제 암호화 로직을 테스트 해야한다 (내부 설계에 의존해야 한다)

정도로 이해했습니다만 제가 맞게 이해한 것인지 감이 오질 않습니다.

 

요약하자면

  1. 내부 설계란 외부로 드러난 인터페이스 외적인 것들을 말하는 것인지

  2. 왜 내부 설계를 의존해야만 하는 상황이 발생하는지

정도일 것 같습니다.

 

감사합니다.

답변

답변을 기다리고 있는 질문이에요
첫번째 답변을 남겨보세요!
counterchord89님의 프로필 이미지
counterchord89

작성한 질문수

질문하기