-
[방법론] TDD란?Dev 2018. 4. 20. 19:46
TDD 방법론에서 적용할 수 있는 Mocha 프레임워크
TDD란 ?
TDD란 Test-Driven Development 의 약자로, "테스트 주도 개발" 이라고 한다. 현재 전 세계에서 가장 즐겨 사용하는 개발 방법론이라고 한다.
반복 테스트를 이용한 소프트웨어 방법론으로, 작은 단위의 테스트 케이스를 작성하고 이를 통과하는 코드를 추가하는 단계를 반복하여 소프트웨어를 구현한다고 한다.
위 사진과 같은 프로세스로 이루어져 있다.
1. 실패하는 테스트를 작성한다.
- 애자일 개발론의 Robert C.Martin 은 다음의 TDD 원칙을 제시한다.
1. 실패하는 테스트를 작성하기 전에는 절대로 제품 코드를 작성하지 않는다.
2. 실패하는 실패하는 테스트 코드를 한번에 하나 이상 작성하지 않는다.
3. 현재 실패하고 있는 테스트를 통과하기에 충분한 정도를 넘어서는 제품 코드를 작성하지 않는다.
2. 테스트에 통과할만한 코드를 작성한다.
3. 코드를 좀더 효율적으로 바꾼다.
중요한 것은 개발하는 과정에서 Test Script 를 작성하고 코드를 리팩토링했다는 점이 중요하다.
TDD를 적용했을 때의 장점으로는 1. 간결한 코드 유지가 가능하고 2. 자동화된 단위 테스트 케이스를 갖고 있어서 필요한 시점에 언제든 수행할 수 있으며 시스템의 이상 유무를 바로 확인할 수 있다는 점 등등이 있다.
현재 Javascript에서 사용할 수 있는 테스트 프레임워크로는 Jasmine, Karma, JUnit, Jest, Mocha 등이 있다.
참고
https://soulpark.wordpress.com/2012/09/12/test-driven-development/
http://blog.jeonghwan.net/mocha/
'Dev' 카테고리의 다른 글
Typescript에서 Builder Pattern 사용하기 (0) 2021.05.10 [DEV]SPA 알아보기 - Single Page Application (0) 2018.05.18 [JS] Webpack 4 setting 'mode' option (0) 2018.03.15 [Dev]점진적 향상법(Progressive enhancement), 우아한 성능 저하법(graceful degradation) (0) 2018.02.06 [WEB] CSS animation vs JS animation (0) 2018.02.06