실용주의 프로그래머를 위한 단위테스트 with JUnit
Science/Computational반응형
이 책은 단위테스트를 왜 도입해야 하는가에 대해 서론에서 매우 설득력 있게 설명하고 있습니다. 원천적으로 오류가 없는 소프트웨어란 매우 어렵습니다. 목적은 매 순간의 코드를 단위테스트를 통해 검증함으로써 나중에 일어날 수 있는, 즉 찾지 못한 오류가 누적됨으로써 발생하는 재앙을 막아보자는 데 있습니다. 이런 패턴적 문제 해결은 애자일 쪽과 통하는 면이 있습니다. 코드를 작성함으로써 부산물로 나오는 단위테스트 코드는, 그 코드를 후에 인수할 사람들에게는 좋은 문서이자, 참고자료, 나침반이 됩니다.
이 책에서는 JUnit으로 테스트를 작성하는 근본적인 부분부터, 테스트의 대상은 무엇인지, 모의 객체는 어떻게 사용하는지, 프로젝트에서는 테스트를 어떤 식으로 할 것인지 등에 대해 차근차근 다루고 있습니다. 재치있는 약자를 통해 쉽게 책의 내용을 숙지할 수 있도록 돕는 것도 책의 장점입니다. 이를 테면 Right-BICEP과 CORRECT가 있습니다.
사실 이 책을 고른 이유는, 책의 서문에서 비록 이 책이 예제는 Java를 사용하고 JUnit 프레임워크를 사용했지만 다른 60개가 넘는 언어에서 비슷한 테스트 프레임워크가 지원된다고 했기 때문입니다. c2.com에서 Testing Framework라는 문서를 통해 다양한 프레임워크가 있다는 것을 알 수 있습니다. 개인적으로 SmlUnit이라는 테스팅프레임워크를 다루어 보려고 하다가, 막막해서 JUnit에 대한 책이 나와 있으니 이 책을 우선 참고하는게 어떨까 하는 생각이었죠. 1
프로젝트에 단위테스트를 도입하여 꾸준한 피드백으로 잘 조직화된 코드를 작성한다면, 유지보수성이 높고 안정적인 결과물이 나오지 않을까 생각해 봅니다.
- SML#, SML/NJ, MLton을 지원하는 Standard ML 버전 프레임워크. SML#-SMLUnit에서 JUnit의 이식된 버전임을 밝히고 있다. SML#의 도구로 포함되어 있다. SML#은 SML에서 C와의 한결같은 상호운용성, 레코드 다형성, 랭크1 다형성 등을 확장한 것이다. 도호쿠 대학 전기통신 연구소에서 일본 문부과학성 등의 후원을 받고 있다. [본문으로]
반응형
댓글을 달아 주세요