inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Practical Testing: 실용적인 테스트 가이드

Presentation Layer 테스트 (1)

테스트코드 순서 질문

189

아자

작성한 질문수 13

0

spring tdd jpa mockito 소프트웨어-테스트 junit5

답변 2

0

박우빈

안녕하세요, Doobie 님!

테스트 코드의 작성 순서를 정해놓고 개발하지는 않아요 ㅎㅎ
강의의 테스트 순서는 커리큘럼 구성 상 가장 안쪽 레이어부터 소개드린 것이고요.
실제로는 개발하는 과정에서 개발 완료되는 순서, 테스트가 필요한 순서를 고려하여 테스트하고 있습니다.

도움이 되셨기를 바랍니다.
감사합니다 🙂

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.
Doobie님, 질문해주셔서 감사합니다.

보통 테스트 코드 작성 순서는 상황에 따라 다를 수 있지만, 일반적으로는 테스트 피라미드 전략을 따릅니다. 강의에서 언급한 영속성 -> 서비스 -> 컨트롤러 순서는 이러한 전략과 일치하는 경우가 많습니다. 이는 각각의 단계를 독립적으로 검증함으로써 빠른 피드백을 제공하고, 문제 발생 시 원인을 쉽게 추적할 수 있도록 합니다.

  1. 영속성 테스트는 데이터베이스와의 상호작용을 테스트합니다. 데이터 접근 객체(DAO)가 정확하게 동작하는지 확인합니다.

  2. 서비스 테스트는 비즈니스 로직을 테스트합니다. 이 단계에서는 서드파티 서비스나 데이터베이스에 직접 의존하지 않도록 모킹(Mocking) 기법을 많이 사용합니다.

  3. 컨트롤러 테스트는 외부에서 들어오는 요청과 응답을 테스트합니다. 이 테스트를 통해 API의 엔드포인트가 올바르게 작동하는지 확인합니다.

이 순서를 따를 경우, 하위 계층에 문제가 생기면 조기에 발견하고 수정할 수 있습니다. 하지만 프로젝트의 구조나 특성에 따라 순서를 조정할 수도 있습니다. 자신에게 맞는 방식으로 테스트를 진행하시되, 각 계층의 독립성과 모듈성을 유지하는 것이 중요합니다.

보다 자세한 정보는 Spring Boot Reference Documentation을 참고하시면 도움이 될 것입니다.

private 상수 테스트 관련 질문

0

87

1

void는 어떻게 테스트하나요..? void로 애초에 코딩하면 안되나요??

0

128

2

커버리지는 어떻게 활용하시는지 궁금합니다.

0

163

2

테스트 문서화 질문입니다

0

107

2

단위테스트 질문이 있습니다

0

96

2

컨트롤러는 모킹을 한 이유가 궁금합니다.

0

106

2

ERD 가장자리에 있는 도메인 테스트 질문

0

90

2

DTO 검증 필드에 대한 테스트 코드 작성은 어디까지?

0

136

2

OrderCreateRequest DTO에 대해서 궁금한점

0

104

2

고전파의 테스트 대역 사용 대상, 공유 의존성

0

157

2

계층 관련 질문이 있습니다.

0

140

3

'코틀린'에서는 빌더를 따로 쓰지 않는데, 이 때는 어떻게 test fixture를 만드시는지 궁금합니다

1

124

2

혹시 update 로직은 어떻게 테스트하나요? (@Setter?)

0

135

2

단위테스트와 통합테스트의 경계가 궁금합니다.

0

235

2

Service+Repository 통합테스트 관련 질문입니다.

0

151

2

OrderControllerDocsTest 작성 해봤는데요. 날짜 형식이 이상하게 나와요

0

186

2

test 용 .yml

0

91

2

throws Exception

0

81

2

카페키오스크 클래스 문의 ,,

0

90

2

Rest docs 문서용 테스트코드를 따로 작성해야 되나요?

0

176

2

테스트 코드에서 필요한 생성자

0

139

1

tearDown 순서

0

116

2

@Builder 생성자 private

0

137

2

@DisplayName gradle / intellJ

0

94

2