Extreme programming 에서는 소프트웨어의 품질을 높이고 확실한 개발을 위해 가장 중요한 것으로 여기는 것이 Testing 이다. Testing 에도 여러가지가 있지만 가장 기본이 되는 것은 Unit testing 이다.

개발한 단위 부분(Unit) 마다 그 Unit 이 제대로 동작하는가 여러가지 테스트 (test case) 를 만들어서 주기적으로 테스트를 수행하게 되면 안정적인 소프트웨어를 개발하는데 큰 도움이 된다.

그런데 테스트라는 것을 만들고 주기적으로 수행하는 것은 귀찮은 일이고 단순반복적인 요소가 많다. 그렇기 때문에 프로그래머가 테스팅을 게을리하게 되는 경우가 많은데, 그런 문제를 해결하기 위해 XPer 들은 테스트를 자동화할 수 있는 방법들을 만들어내었다.

최초로 만들어진 것이 JUnit 인데 자바로 만들어져서 자바 코드들을 자동으로 테스트하는데 사용되었고 이후 여러가지 다른 플랫폼, 다른 언어용으로도 개발되었다 (CUnit, CPPUnit, DUnit, VBUnit 등..)

C++ 언어용 Unit Test 환경으로는 CPPUnit 가 알려져 있지만 아래 소개하는 TUT (Template Unit Testing) 도 장점이 많은 것 같다. 이름에서 보는 것처럼 TUT 의 특징은 각 테스트 케이스들을 템플릿으로 만든다는 점이다.

관심있는 분들은 아래 사이트에서 정보를 찾아보시기 바란다.

http://tut.dozen.ru

imcgames 의 김학규입니다