전주호
WebSurf
전주호
전체 방문자
오늘
어제
  • 분류 전체보기 (63)
    • CS (1)
    • 프로그래밍 언어 (3)
      • JAVA (1)
      • Python (2)
    • WEB (35)
      • Spring (21)
      • FastAPI (1)
      • React (4)
    • Git (1)
    • Database (2)
    • Cloud (4)
    • Docker (0)
    • Linux (0)
    • AI (8)
      • ComputerVision (3)
      • CUDA (1)
      • Anaconda (1)
      • NLP (1)
    • ETC (9)
    • Project (0)
      • GolaBlur (0)
    • 알고리즘 문제 풀이 (0)
      • 프로그래머스 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 테스트
  • spring
  • API
  • react
  • 클라우드
  • 스프링
  • junit
  • db
  • 단위테스트
  • EC2
  • jwt
  • springboot
  • oauth2
  • Spring Security
  • web
  • 트러블슈팅
  • 백엔드
  • cloud
  • AI
  • Internet
  • AWS
  • 문제해결
  • conda
  • S3
  • http
  • PYTHON
  • websocket
  • 백엔드로드맵
  • jpa
  • MobileFaceSwap

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
전주호

WebSurf

WEB/Spring

[Spring Boot] Spring Boot에서 TDD 방법론

2023. 6. 23. 18:35
반응형

이전에 스프링을 사용하여 개발을 진행했을 때는 테스트를 거의 하지 않았습니다.
딱히 필요하다고 느끼지 못했습니다.

하지만 많은 팀에서 채택하는 것을 보고
TDD 방법론과 조금은 친해지면서 새롭게 시작할 프로젝트에는 적용해서 개발해보고 싶어졌습니다.

 

TDD?

먼저 TDD란??
Test Driven Development, 테스트 주도 개발입니다.

말 그대로 테스트 코드를 먼저 작성하고 테스트를 통과하기 위해 개발을 이어가는 방법입니다.

 

Why TDD?

그렇다면 TDD를 채택하는 이유는 무엇일까요?

TDD의 장점은 다음과 같습니다.
객체 지향적인 코드 개발, 설계 수정시간의 단축, 유지보수(리팩터링)의 용이성, 테스트 문서의 대체 가능 

저는 이중에서 객체 지향적인 코드 개발, 유지보수의 용이성, 테스트 문서의 대체 가능
이 세가지 장점을 보고 선택했습니다.

  • "객체 지향적인 코드 개발"은 Spring Boot의 특성을 살리기에 선택했습니다.
  • "유지보수의 용이성"은 지금 당장의 개발이 아닌 이후에 추가로 진행할 개발을 위한 선택했습니다.
  • "테스트 문서의 대체 가능"은 이후 개발에서 다른 팀원이 추가될 경우 테스트 코드를 확인하여 바로 개발을 진행할 수 있어 선택했습니다.

 

TDD!

그렇다면 Spring Boot에서 TDD를 어떻게 적용할 수 있을까요?

테스트의 종류로는 단위 테스트, 통합 테스트 등이 있습니다.

  • 단위 테스트는 하나의 모듈을 테스트하는 것을 말합니다. 일반적으로 메서드 단위를 테스트합니다.
  • 통합 테스트는 여러 모듈의 상호작용을 테스트하는 것을 말합니다.

 

 

 

Reference

https://media.fastcampus.co.kr/knowledge/dev/tdd/

 

TDD란? 테스트주도개발에 대한 편견과 실상, 방법론

TDD, 즉 테스트 주도 개발(Test Driven Development)에 대한 프로그래머들의 의견은 늘 엇갈린다. TDD의 실효성을 업무로 경험한 사람들은 TDD를 더 효과적으로 실무에 적용하기 위해 고민한다. 반면, 회사

media.fastcampus.co.kr

http://www.incodom.kr/%ED%85%8C%EC%8A%A4%ED%8A%B8_%EC%A3%BC%EB%8F%84_%EA%B0%9C%EB%B0%9C

 

생물정보 전문위키, 인코덤

Wikipedia for Bioinformatics

www.incodom.kr

 

https://repo.yona.io/doortts/blog/issue/1

 

"TDD 실천법과 도구" 책 전체를 PDF 공개합니다.

2010년 6월에 출간되었던 "TDD 실천법과 도구" 책 전체를 PDF로 공개합니다. 책소개: http://naver.me/GaYZCDjD Updated --- - [1장 - 테스트주도개발 Test Driven Development](https://repo.yona.io/doortts/blog/issue/2) - 18.07.18 -

repo.yona.io

 

반응형
저작자표시 (새창열림)

'WEB > Spring' 카테고리의 다른 글

[Spring Boot] JPA - MySQL  (0) 2023.09.08
[Spring Boot] TDD - JUnit?  (0) 2023.06.27
[Spring] 패키지 구조  (0) 2023.03.29
[Spring Boot] Spring boot EC2에 배포하기  (0) 2022.12.19
[Spring] RestTemplate Response Entity Type  (0) 2022.12.15
    'WEB/Spring' 카테고리의 다른 글
    • [Spring Boot] JPA - MySQL
    • [Spring Boot] TDD - JUnit?
    • [Spring] 패키지 구조
    • [Spring Boot] Spring boot EC2에 배포하기
    전주호
    전주호

    티스토리툴바