[ Code Coverage, 테스트의 ‘질’을 높이다 ]
** 모바일QA 인턴 근무시절, 입사한지 얼마 안 되어 적응을 하기도 전에 작은 프로젝트를 맡게 되었습니다. 테스트의 질을 높이기 위한 안드로이드 Code Coverage 프로젝트였습니다. QA업무시 수행하는 Test Case가 코드를 얼마나 커버하는지 측정하여 기존 테스트를 보완하고 테스트의 신뢰도를 높이기 위함이었습니다.
하지만 안드로이드에 대한 코드 커버리지 자료가 부족하여 시작부터 어려움이 있었습니다. 프로젝트 진행 중 테스트 종료시점을 정확히 체크하지 못하는 예상치 못한 난관에 부딪혔습니다. 이에 대한 대안으로 팀원과 함께 처음 생각한 방식은 측정시작 방식과 같이 단말기의 메뉴버튼을 통한 종료메뉴을 생성하여 수동으로 종료시점 알려주는 방식이었습니다.
하지만 시작지점과 달리 종료메뉴를 누르는 동작까지 측정파일에 모두 기록이 되는 부분이기 때문에, 더 정확하게 측정하기 위해 Back키를 통하여 앱을 완전히 종료한 시점을 측정완료 지점으로 변경하여 보다 정확한 Coverage Rate를 측정하는데 성공했습니다.
그 결과, 테스트에 대한 Coverage Report를 생성하는 Tool을 완성하였습니다. 이 Tool은 엔지니어들에게 긍정적인 평가를 얻어 실제 테스트 업무에서 활용하게 되었고, 전체 기능 테스트 후 실행되지 않은 부분을 리팩토링하거나 Test Case를 추가/수정하는 작업을 할 수 있게 되면서 테스트의 질을 향상시킬 수 있었습니다.
이 경험을 통해 작은 부분이지만 테스트 프로세스의 효율성 증대에 기여했다는 성취감을 느꼈습니다. 입사후에도 효율적인 업무 프로세스 개선을 위해 노력하는 인재가 되겠습니다.
글자수 852자1,406Byte