TDD란 ?

Blackeichi·2023년 1월 3일
0
post-custom-banner

좋은 개발자는 ?

필요한 기능을 빠르게 구현하는 것
기능에 해당하는 테스트를 잘 작성하는 것

테스트란 ?

소프트웨어테스트 - 제품 or 서비스의 품질을 확인 및 소프트웨어 버그를 찾음
즉 제품(함수, 특정한 기능, UI, 성능, API스펙)이 예상하는 대로 동작하는지 확인

테스트의 프로세스는 단 하나이다
특정한 기능을 수행하는 로직을 가지고 있는 소스 코드가 존재할 때 이것을 테스트하는 테스트코드를 작성한다. 우리의 코드가 우리가 예상하는 바대로 작동하는지 그리고 테스트코드를 작동시켰을 때 모든 테스트가 pass되는지 확인하는 것 (pass가 될 때 까지 코드 수정)

TDD란 ?

  • TDD란 Test-driven Development의 줄임말로 테스트 주도 개발이다

  • 개발(코드 작성)전 테스트 코드를 먼저 작성하는 방식

특정한 세분적인 기능에 한해서 테스트코드를 작성하고 테스트를 수행하여 성공할 때까지의 딱 충분한 만큼만 코드를 작성해서 테스트를 계속 반복하고, 성공한다면 다음 기능에 대한 테스트를 작성(테스트코드와 코드를 작성)하며 개발해 나가는 것

모든 기능들의 구현을 완성한 후에 Refactoring을 통해 코드의 퀄리티를 향상시키고 추가적인 코드를 넣는 것이다.

즉 TDD는 실패하는 테스트(처음엔 작성된 코드조차 없음)를 먼저 작성한 후 완성시키는 방법이며,
TDD를 사용하는 이유는 작성하고자 하는 요구 사항의 철저한 분석과 이해가 필요하기 때문이다.
즉 TDD를 이용하면 모든 요구 사항(목표)에 대해 점검할 수 있으며, 사용자 입장에서 코드를 작성할 수 있다. 즉 구현보다는 인터페이스에 중점을 두어 코드의 퀄리티를 향상시킨다.

profile
프론트엔드 주니어 개발자 한정우입니다. 😁
post-custom-banner

0개의 댓글