상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
수정하기 - JUnit에서 커버리지 보고서를 생성하는 방법은?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
JUnit 자체는 단위 테스트 프레임워크로, 코드 커버리지 보고서를 직접 생성하는 기능을 제공하지 않습니다. 대신, JUnit 테스트를 실행한 후에 커버리지 도구를 함께 사용하여 커버리지 보고서를 생성합니다. 보통 Java 프로젝트에서는 다음과 같은 도구를 주로 사용합니다: 1. JaCoCo (Java Code Coverage Library) JaCoCo는 가장 널리 사용되는 Java 코드 커버리지 도구입니다. Maven, Gradle, Ant 등과 쉽게 통합할 수 있으며, JUnit 테스트 실행 시 자동으로 커버리지를 수집하고 다양한 형식(HTML, XML, CSV)의 보고서를 생성할 수 있습니다. 2. Cobertura 범용적으로 사용되던 커버리지 도구로, JaCoCo보다 설정이 더 복잡한 편이며 현재는 JaCoCo가 더 많이 쓰이고 있습니다. 3. Emma 이전에 많이 쓰였던 도구지만 개발이 중단된 상태입니다. --- JUnit과 함께 JaCoCo를 이용해 커버리지 보고서 생성하기 (Maven 기준) 1. 프로젝트에 JaCoCo 플러그인 추가 Maven `pom.xml`에 JaCoCo 플러그인을 설정합니다. 예를 들어: ```xml <build> <plugins> <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <version>0.8.10</version> <executions> <execution> <goals> <goal>prepare-agent</goal> <!-- 테스트 시 커버리지 수집 --> </goals> </execution> <execution> <id>report</id> <phase>test</phase> <goals> <goal>report</goal> <!-- 테스트 후 보고서 생성 --> </goals> </execution> </executions> </plugin> </plugins> </build> ``` 2. JUnit 테스트 작성 및 실행 이미 작성된 JUnit 테스트가 있다면 `mvn test` 명령으로 테스트를 수행합니다. 이때 JaCoCo 에이전트가 테스트 실행 중 클래스 사용 정보를 수집합니다. 3. 커버리지 보고서 생성 위 설정대로 하면 `mvn test` 이후에 `target/site/jacoco/index.html` 위치에 HTML 형식의 상세한 커버리지 보고서가 생성됩니다. 브라우저로 열어 보면 메서드, 클래스, 패키지 단위로 커버리지 정도를 확인할 수 있습니다. --- Gradle을 사용하는 경우 Gradle에서도 JaCoCo 플러그인을 추가해 JUnit 테스트 실행과 함께 커버리지 수집 및 보고서 생성이 가능합니다. 예) ```groovy plugins { id 'java' id 'jacoco' } jacoco { toolVersion = "0.8.10" } test { useJUnitPlatform() finalizedBy jacocoTestReport // 테스트 이후 보고서 생성 } jacocoTestReport { reports { html.required = true xml.required = false csv.required = false } } ``` 이후 `gradle test jacocoTestReport`를 실행하면 `build/reports/jacoco/test/html/index.html`에 커버리지가 생성됩니다. --- 정리 - JUnit은 커버리지 기능이 없으므로, 코드를 계측하는 커버리지 도구와 통합해야 함 - JaCoCo가 현재 가장 많이 쓰이며 설정이 비교적 쉽고 다양한 빌드 도구와 연동 가능 - Maven, Gradle 프로젝트에 각각 맞는 JaCoCo 플러그인을 설정 후 JUnit 테스트를 실행하면 커버리지 수집 및 보고서 생성 가능 - 결과 HTML 보고서를 통해 어느 라인, 메서드, 클래스가 테스트되었는지 시각적으로 확인 가능 이와 같이 JUnit 테스트를 감싸서 커버리지 도구를 함께 실행함으로써 커버리지 보고서를 생성할 수 있습니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기