[ETC] TDD 개념

허북이_·2022년 10월 6일
0

etc

목록 보기
4/5
post-thumbnail

TDD(Test-driven Development)

칠판 img

코드를 작성하기 이전에 테스트를 진행하는 프래그래밍 방법론이며 테스트 주도 개발이라고 부르기도 합니다..
TDD는 개발자가 기획한 코드의 예상가능한 결과를 미리 코드로 작성해놓고, 해당 테스트 코드로 작성하는 코드를 테스트 하는 방식이며,
버그를 예방하고 자연스럽게 버그를 fix할 시간도 줄어들게 됩니다. 이것이 TDD의 목적이라고 할 수 있겠습니다.

TDD의 개발 주기

TDD의 개발 주기

TDD 방법론에 따른 개발 주기는 다음과 같습니다.
  1. 실패하는 테스트 코드를 작성합니다.
  2. 테스트 코드를 통과하는 실제 코드를 작성합니다.
  3. 작성된 실제 코드를 리팩토링합니다.

이 과정에 대해 더 이야기를 해보겠습니다.

예상가능한 결과를 테스트 코드로 정확히 작성하지 않았을 때 실제 코드를 작성하게 된다면, 당연하게도 테스트가 원하는대로 이루어지지 않을 가능성이 매우 커집니다.
또한 실제 코드를 바로 방대하게 작성을 한다면 그 도중에 많은 에러를 겪을 수 있고, 그 오류가 어디에서 발생했는지 찾기 힘들어 에러 핸들링을 어렵게 합니다.

따라서 꼭 1단계 과정을 마친 후에 2단계 과정을 진행해야하는 것이고, 2단계 과정을 수행할 때엔 1단계의 테스트 코드를 통과할 최소한의 코드를 작성해야합니다.

이러한 단계가 반복적으로 진행이 되면서 버그가 줄어들고, 더 간결한 코드를 작성 할 수 있게 됩니다.

TDD with React

React 공식 문서에서 Jest를 활용하여 테스트를 진행하는 방안을 확인하실 수 있습니다.

profile
인간 거북이 허북이

0개의 댓글