개발일지 - 테스트 주도개발

아침7시개발·2022년 1월 13일
0

개발일지

목록 보기
4/19
post-thumbnail

테스트 주도 개발이란?

테스트 주도 개발은 일종의 개발 방식 또는 개발 패턴을 말한다. 무언가를 개발할 때 바로 개발부터 하는 것이 아니라 개발하려는 항목에 대한 점검 사항을 테스트 코드로 만들고 그 테스트를 통과 시키는 방식으로 개발을 진행하는 방법이다.

왜 테스트 주도 개발을 적용할까?
지금까지 어떤 방식으로 웹 사이트를 개발했는지 정리해보자.

  • 구현: 만들고 싶은 요소를 떠올리고 소스 코드를 작성한다.
  • 웹 브라우저로 직접 확인: 웹 브라우저로 들어가서 잘 작동하는지 일일이 테스트한다.
  • 성공: 제대로 작동하지 않으면 다시 소스 코드를 들여다 보고 수정하면서 성공 시킨다.
  • 개선점 찾기: 다음에는 무엇을 더 개선해야 할지, 무엇을 개발해야 할지 고민을 한 후 다시 구현해 본다.

단순한 웹 사이트를 만들 때는 이런 방식이 효율적일 수 있다. 그러나 모델의 구조가 복잡하고, 기능이 다양하고, 페이지도 많은 웹 사이트를 만들 때는 이런 방식이 더 이상 효율적이지 않을 수 있다. 개발을 할때 한 단계씩 진행할 때마다 정석대로 테스트 하는 것이 좋다.이럴 때 사용하는 방법이 테스트 주도 개발이다.

테스트 코드 작성

  • 만들고 싶은 기능을 점검할 코드 작성
  • 아직 기능을 구현하지 않았으므로 테스트 결과는 당연히 실패

기능 구현

  • 테스트 코드를 만족 시킬 수 있게 기능을 구현
  • 테스트 통과를 최우선으로 생각하고 작업

리팩토링

  • 기능의 성능을 향상시키거나, 재사용성이 좋거나, 가동성이 좋은 코드로 개선
  • 테스트 코드로 다시 기능을 점검

결론
개발한 코드가 테스트를 만족하는지 자동으로 확인하면서 개발을 진행하므로 매번 직접 테스트하느라 지치지도 않고, 사고가 발생할 확률도 훨씬 줄어든다.

profile
쉬엄쉬엄하는 개발자

0개의 댓글