소프트웨어를 테스트하여 품질을 높여야한다는 점은 두말할 나위가 없습니다. 하지만 테스트라는건 실로 복잡한 행위입니다. 특히 전문적인 QA나 QC조직 소속이 아니라면 표준절차나 기본적인 지식도 제대로 습득하기 어렵습니다.
그럼에도 불구하고 코드를 생산하기 때문에 개발자들은 본인 테스트에 대해서 이해한다고 착각하는 경우가 많습니다. 특히 이는 단위테스트를 중심으로 사고하는 테스트주도개발론이 대두된 이후에 더욱 심해지는 경향이 있습니다. 전체 테스트프로세스에 단위테스트는 일부일 뿐입니다. 설계와 개발에 중요한 영향을 주긴 하지만 단위테스트가 보증할 수 있는 품질의 범위는 매우 제한적이죠.
저만 해도 기존에 쌓아온 지식체계가 테스트를 통해 어떻게 더 소프트웨어를 잘 만들 수 있을까라는 관점이었고 이 때의 테스트라는 개념도 태반이 단위테스트였습니다.

많은 테스트책을 보긴 했습니다만…이게 태반 개발자용이죠..
얼마 전 “테스트주도 개발로 배우는 객체지향설계와 실천” 이란 책으로 스터디를 진행했는데, 몇 번이나 본 책임에도 스터디를 진행하니 한자 한자 다르게 퍼지는 울림이 있었습니다.
단위테스트가 아니라 통합테스트 또는 인수테스트를 기본으로 개발을 바라보게 되는 관점이 더욱 공고해지고 나아가 테스트를 넘어 QA의 전반적인 내용을 개발시에 반영할 방법은 없을까 고민하게 되었죠.
하지만..
역시 테스트에 대해서 아는게 너무 없고 반대로 정식 테스트 책들은 너무 어렵고 방대합니다. 적당한 입문서를 찾았는데, 그게 바로 nipa에서 직접 출간한 이 책입니다. 책이 굉장히 얇고 작은 배판으로 되어있어 읽기에 부담없을 뿐 아니라 퍼소나형태로 이야기를 전개하므로 읽기도 편합니다. 동시에 교과서적인 체계성을 잘 요약해서 설명해주며 다양한 실무 예제와 적용 사례를 같이 곁들여줘 좋았습니다.
공부해보고 나니 참 다른 동네와 마찬가지로 이 동네도 굉장히 깊은 세계인데다가 ISO등의 표준도 부분별로 꼼꼼하게 존재하고 있었습니다. 좀 더 견고한 품질을 잦은 수정에도 유지할 수 있는 방법을 탐구하는 저에게 많은 도움이 되었습니다.
recent comment