본문 바로가기
기타

테스트 케이스와 TDD

by 올리브영 2023. 2. 23.
728x90
반응형

테스트 케이스란?


사람이 아닌 기계가 테스트 하는것이다.(테스트 자동화)

 

ex)

앱A를 만든다고 가정하자.

  • 1일차 - 회원(가입, 로그인, 로그아웃, 정보수정, 이메일 인증)
  • 2일차 - 커뮤니티(글CRUD, 댓글 CRUD, 좋아요, 알림)
  • 3일차 - 관리(관리자페이지)

테스트는 앱 개발하면서 테스트를 해야하고, 테스틑 했더라도 새로운 기능이 구현되면 그전에 테스트했던것도 다시 테스트를 해야한다.

하지만 이 모든것을 계속반복적으로 하면 시간이 오래걸린다.

  • 회원 기능을 만들면, 회원 기능 테스트
  • 커뮤니티 기능을 만들면, 커뮤니티 기능과 회원 기능 테스트
  • 관리 기능을 만들면, 관리 기능, 커뮤니티 기능, 회원기능을 테스트...

많은 기능들이 구현될수록 테스트해야되는 기능들도 많아진다. 그래서 테스트 케이스를 만든다.

 

 

TDD 개발 방법론


TDD(Test Driven Development)는 기능을 먼저 만드는 것이 아닌, 테스트를 먼저 작성하고 이를 통과하는 코드를 작성하는 개발 방법론이다.

  • Red 단계
    • 실패하는 테스트 코드를 만든다.
  • Green 단계
    • 테스트 코드를 성공시키기 위한 실제 코드를 작성한다.
    • 최대한 빠르게 작업(10분을 넘지 말 것)
  • Blue 단계
    • 중복 코드 제거, 일반화 등의 리팩토링을 수행한다.
728x90
반응형