더북(TheBook)

1.2 단위 테스트 정의

소프트웨어 개발 분야에서 단위 테스트는 새로운 개념이 아니다. 1970년대 스몰토크(Smalltalk)라는 오래된 프로그래밍 언어 초기부터 있어 왔으며 모듈, 클래스, 함수의 기능 요구 사항을 충족하면서 코드 품질을 향상시키는 가장 좋은 방법 중 하나로 꾸준히 입증되어 왔다. 켄트 벡(Kent Beck)이 스몰토크에서 단위 테스트 개념을 도입했으며, 이 개념은 다른 프로그래밍 언어로 널리 확산되어 단위 테스트의 효용성을 알리는 데 일조했다.

위키백과에서 단위 테스트를 어떻게 정의하고 있는지 살펴보자. 개인적으로는 중요한 부분이 많이 빠져 있다고 생각하지만, 그래도 많은 사람이 인정하는 정의다. 이 장에서는 위키백과에서 정의하는 단위 테스트에 좀 더 살을 붙여 볼 예정이다. 그리고 1.9절에서 단위 테스트의 최종 정의를 완성시킬 것이다.

단위 테스트(unit test)는 컴퓨터 프로그래밍에서 예제 코드의 특정 모듈이 의도된 대로 정확히 작동하는지 검증하는 절차다. 즉, 모든 함수와 메서드에 대한 테스트 케이스(test case)를 작성하는 절차를 말한다. 이를 통해서 언제라도 코드 변경으로 인해 문제가 발생할 경우, 단시간 내에 이를 파악하고 바로잡을 수 있도록 해준다. 이상적으로, 각 테스트 케이스는 서로 분리되어야 한다.1

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.