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

알닉님의 프로필 이미지
알닉

작성한 질문수

스프링 핵심 원리 - 고급편

템플릿 콜백 패턴 - 예제

수업 방식 질문입니다.

해결된 질문

작성

·

409

0

테스트에 @Test 가 달린 코드만 작성하는게 아니라 테스트에 사용되는 다른 개발 코드들도 테스트 폴더 밑에 작성하고 계신데 이런걸 TDD로 봐도 될까요?

답변 1

1

안녕하세요. 알닉님, 공식 서포터즈 y2gcoder입니다.

TDD라는 것은 개발방법론의 하나로 RED-GREEN-BLUE 의 사이클을 도는 선 테스트 후 개발 방식의 개발방법론을 뜻합니다.

RED에서는 먼저 만들고자 하는 기능에 대한 테스트를 작성해서 실패하는 결과까지 확인하고, GREEN에서 어떻게든(심지어 하드 코딩을 해도 괜찮습니다) 해당 테스트가 통과하도록 구현하고, BLUE에서는 GREEN 때 통과한 메서드를 리팩토링하는 사이클로 개발하는 것을 뜻합니다.

테스트를 위해 만드는 다른 코드들을 src/test/java 패키지 밑에 두는 것은 비단 TDD 를 위한 것이 아니라고 생각합니다. 우리가 서비스를 만들때 서비스에 필요한 코드들을 전부 서비스와 같은 패키지에 두는 것과 같이 해당 테스트에 필요한 코드를 해당 테스트 와 동일한, 가까운 패키지에 두는 느낌이라고 생각하시는 게 맞는 것 같습니다 :)

감사합니다.


알닉님의 프로필 이미지
알닉

작성한 질문수

질문하기