2024년 3월 8일에 작성되었고, 블로그를 이전하며 옮겨온 포스트입니다.
여기에서 원본을 확인할 수 있습니다.

원래 필자는 PHP와 그 프레임워크인 Laravel을 이용하여 개발을 해왔다. 하지만, PHP의 인기도가 점점 낮아져가는 것도 사실이고, 다른 언어를 접해 보고자 PHP에서 Java와 Spring Boot로 주 개발 언어를 변경하였다. Spring Boot에 익숙해지고, 여러 커뮤니티를 보며 '테스트 코드'라는 게시글을 많이 접하게 되었다. 그래서 나도 원래는 테스트 코드를 작성하지 않았지만 사실 귀찮아서.. 테스트 코드를 작성하는 방법과 그 이유에 대해서는 꼭 알고 넘어가고 싶기에 이 글을 작성했다.
테스트 코드를 왜 작성할까?
1. 서버를 시작하여 직접 테스트하는 것 보다 시간을 단축시킬 수 있다.
소규모의 프로젝트는 모르겠지만, 중.대규모의 프로젝트를 진행하게 될 경우 개발되는 API의 수가 상당하다. API를 테스트하려고, Spring 프로젝트 서버를 시작하여 API를 직접 호출하거나 Swagger 같은 툴을 이용해 테스트하면, 값을 계속 입력해 주어야 하는 번거로움이 발생할 뿐 아니라 시간도 많이 소요된다. 하지만, 테스트 코드를 작성해 두면, 테스트 파일만 실행하여 모든 테스트를 손쉽게 마칠 수 있기 때문에 시간이 단축된다.
2. 개발 과정에서 문제를 미리 발견할 수 있다.
API를 실제로 운영하며 발생할 수 있는 최대한의 Case에 맞춰 테스트 코드를 작성했다면 짜여진 코드의 잠재적인 문제를 개발 과정에서 발견할 수 있다. 오류가 발생할 수 있는 케이스에 관한 테스트 코드를 작성하여 예외 처리가 잘 되는지, 의도에 따라 API가 잘 작동되는지에 관해서도 미리 확인할 수 있다.
3. 리펙토링 시 문제를 최소화할 수 있다.
API가 개발되고, 운영하며 보수, 수정, 추가되는 일이 허다한데, 이 과정에서 코드를 변경하다 보면 연관되어 있는 다른 코드에도 영향을 줄 수 있는 가능성이 높다. 이 과정에서 미리 작성해둔 테스트 코드를 통해 다른 코드에서 오류가 발생하는지에 대해 확인할 수 있고, 예기치 않은 오류에 미리 대비할 수 있다.
마무리
이렇게 테스트 코드를 작성하는 이유에 대해 간단하게 알아보았다. 테스트 코드의 필요성에 대해 인지하고 현재 개발하고 있는 프로젝트에 테스트 코드를 작성하고 있는데 다음 글에서는 JUnit과 Mockito를 기반으로 테스트 코드를 어떠한 방식으로 작성하는 지에 간단하게 다뤄보려고 한다.
'Backend > Java' 카테고리의 다른 글
| RabbitMQ를 이용해서 응답 시간을 반의 반의 반의 반으로 줄여보자 (0) | 2026.08.22 |
|---|---|
| [오류 해결] SQL ERROR 1406: Data too long for column at row 1 (0) | 2026.08.22 |
| Spring Boot에서 ChatGPT 활용하기 #2: API로 GPT 응답 값 가져오기 (0) | 2026.08.22 |
| Spring Boot에서 ChatGPT 활용하기 #1: API 연결 테스트 (0) | 2026.08.22 |
| Spring Security: There is no PasswordEncoder mapped for the id "null" 오류 해결 (0) | 2026.08.22 |