본문 바로가기

시즌1/Java Tips

소프트웨어 테스팅 : Code Coverage 분석 Tool - CodeCover 리뷰


CodeCover 리뷰

 
CodeCover는 Java Code Coverage 분석 Tool 중의 하나로써, 무료로 배포되는 Tool 중에서는 그 기능이 최고라고 말할 수 있을 정도로 막강한 기능을 제공하는 Tool 입니다.
본  블로그에 등록된 Code Coverage 관련 글들의 예제들고 이 CodeCover를 이용하여 테스트되었습니다.


Feature
1. Eclipse 기반 : 물론, 커맨드 라인 기반의 Standalone 패키지도 제공이 되지만, 막강한 기능중 하나는 Eclipse plug-In으로 설치되어 간단하게 사용할 수 있는 부분입니다.

2. 지원하는 Code Coverage Criteria : CodeCover는 Statement Coverage, Decision(Branch) Coverage, Loop Coverage, MC/DC Coverage 분석이 가능합니다. 이 중, MC/DC Coverage의 경우, 무료 배포되는 Coverage Tool 중에는 거의 지원하지 않는 분석이지만, CodeCover는 지원을 합니다.

3. Template 기반 Report : 많은 Tool 들이, Template 기반 Reporting 기능을 제공합니다. 다만, 그 Template을 만드는게 익숙치가 않죠. 그러나, CodeCover의 경우, Velocity 기반의 Template을 제공합니다. CodeCover를 사용자는 저희 Java 개발자들에게는 꽤나 익숙하게 편집이 가능한 Template입니다.
설치
1. Eclipse Plug-In 설치
Eclipse Plug-In을 설치하는 방법은 Java 개발자라면 한번씩은 거의 해 보셨으리라 생각합니다. CodeCover는 Eclipse Plug-In으로 설치되며, 다음과 같이 설치 하실 수 있습니다.

  1. Eclispe 구동
  2. Eclipse 메뉴에서, Help > Software updates > Find and install... 선택
  3. Search new features to install 선택 후, New Report Site에서 다음 URL을 입력하신 후, Install 수행

 Name : CodeCover Update Site
 URL : http://update.codecover.org

Getting Start
CodeCover를 설치하셨다면, 간단하게 다음과 같이 Code Coverage를 분석하실 수 있습니다.

1. Project Properties 를 통해, CodeCover 사용여부 활성화 : 다음 그림은 Eclipse Project의 Project Propertes 팝업입니다. 그림과 같이, CodeCover가 정상적으로 설치가 되었다면, 좌측에 CodeCover 메뉴가 뜨며, 해당 메뉴를 선택하는 경우, 오른쪽에 어떠한 Coverage 분석을 수행할 것인지를 선택할 수 있습니다. 다음 그림과 같이, Enable CodeCover를 체크하신 후, 분석한 Code Coverage Criteria를 선택하시면 설정 완료입니다.


2. CodeCover를 통해 분석할 Source Class 선택 : 위 1번 과정을 거치셧다면, 아래 그림과 같이, Java Class에 오른쪽 마우스를 클릭하는 경우, Use For Coverage Measurement 메뉴가 나타나게 됩니다. 패키지를 클릭하셔도 물론 됩니다. 해당 메뉴를 선택하는 경우, 해당 Class 혹은 Package가 Code Coverage 분석 대상으로 지정되게 됩니다.(복수개 가능). 지정된 Class는 다음 그림과 같이, 녹색공 빨간색공(ㅡㅡ) 아이콘이 활성화 됩니다.



3. 분석 수행하기 : 1, 2 번 과정이 끝났다면, 실제로 분석을 수행해야죠. 아래 그림과 같이, 분석을 수행할 Test Case를 선택하신 후, Run As 메뉴로 가시면 Code Cover Measurement For Junit 이 활성화 됩니다. 클릭하시면, 해당 Test Case가 수행이 되고, Code Coverage 분석이 완료됩니다.


4. 결과 보기 : 다음은 Perspective 를 CodeCover Perspective를 연 화면입니다. 물론 필요한 View만을 여셔도 됩니다. 다음 그림과 같이, Code Coverage 분석이 끝난 결과와, 그 결과가 실제 Source Code 상에 표시되게 됩니다. 또한 각종 필요 정보들을 확인하실 수 있습니다.


결론
Code Coverage 분석을 위한 많은 솔루션들이 출시되어 쓰이고 있습니다. VectorCast와 같은 굉장히 비싼 Tool 부터, CodeCover Tool과 같이 무료로 배포되는 Tool 도 있습니다.
CodeCover의 경우, 무료로 배포되는 Tool 중에서는 최고의 기능을 제공하는 Tool 이라고 평가할 수 있습니다. 무료로 배포되기에 누구나 쉽게 나의 Source Code를 내가 어떻게 테스트하고 있는지를 분석할 수 있으며, 어느 Test Case가 부족하여 추가를 해야 하는지 손쉽게 분석할 수 있습니다.

CodeCover Project Team 여러분 감사합니다.