[TIL] 23.04.09 jacoco를 이용한 코드 커버리지 측정

hyewon jeong·2023년 4월 9일
0

TIL

목록 보기
115/138

코드 커버리지(Code Coverage)란?

Code Coverage란 소프트웨어에서 test code가 본 코드를 얼마나 커버하고 있냐를 측정해주는 지표입니다. 테스트를 진행하였을 때 코드 자체가 몇% 나 실행되었느냐로 생각하실 수 있을 것입니다.

원래 원칙적으로 test code는 모든 시나리오에 대해서 설계되어야 합니다. 실제로 배포하는 서비스라면 더욱더 모든 시나리오를 커버하려 합니다. 하지만 현실적으로 내가 지금 작성한 테스트 케이스가 모든 케이스를 커버하는지를 객관적인 지표로 확인할 수 있는 방법 중에 하나가 Code Coverage입니다.

Jacoco 사용법 (IDLE - IntelliJ)

  1. 프로젝트 폴더의 build.gradle 파일의 plugins 에 id 'jacoco' 추가 후, gradle 리셋.
  1. 우측의 Gradle 을 클릭하면, 'jacocoTestReport' 와 'test' 항목을 위의 스크린샷 처럼 확인 할 수 있음

  2. 'test' 를 더블클릭하면 test 가 실행되며, 프로젝트 폴더의 build -> reports 폴더가 생성됨

  3. reports->tests->test->index.html 을 브라우저로 실행하면, 작성한 Test 코드의 성공률과 수행정보를 볼 수 있음.

  4. 'jacocoTestReport'를 더블클릭하면, 프로젝트 폴더의 build->reports->jacoco 폴더가 생성됨

  5. reports->jacoco->test->html->index.html 을 브라우저로 실행하면, 작성한 Test 코드의 코드커버리지를 확인 할 수 있음.

    결론

    ⚡️코드 커버리지

    1 contact.Comment.entity : 86 %
    2 contact.Comment.service : 68 % ( -> 80% 까지 올리기)
    3 contact.entity : 87 %
    4 contact.service. : 45 % ( -> 80% 까지 올리기)

profile
개발자꿈나무

0개의 댓글