WildFly+jacoco를 통해integration-test 덮어쓰기 가져오기

개요
wildfly-maven-pluggin과 jacoo를 사용하여integration-test의 덮어쓰기를 얻을 수 있습니다.
컨디션
  • WildFly 8.0.0.Final
  • wildfly-maven-plugin 1.0.1.Final
  • jacoco-maven-plugin 0.7.0.201403182114
  • 전제 조건
    wildfly-maven-pluggin의integration test 사용하기의 내용에 따라 WildFly에서integration-test를 실행할 수 있습니다.
    컨텐트
  • pom에 다음 설정을 추가합니다.
  • jacoco 플러그인을 추가합니다.
  • wildfly의 jvm 옵션에서 jacoco를 java에이전트로 지정합니다.
  • pom.xml
        <build>
            <plugins>
                <plugin>
                    <groupId>org.jacoco</groupId>
                    <artifactId>jacoco-maven-plugin</artifactId>
                    <version>0.7.0.201403182114</version>
                </plugin>            
                <plugin>
                    <groupId>org.wildfly.plugins</groupId>
                    <artifactId>wildfly-maven-plugin</artifactId>
                    <version>1.0.1.Final</version>
                    <configuration>
                        <jvmArgs>-Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -javaagent:${user.home}/.m2/repository/org/jacoco/org.jacoco.agent/0.7.0.201403182114/org.jacoco.agent-0.7.0.201403182114-runtime.jar=destfile=${basedir}/target/jacoco.exec</jvmArgs>
                        <jbossHome>${wildflyPath}</jbossHome>
                        <serverConfig>standalone.xml</serverConfig>
                    </configuration>
    
    요점은 jvmArgs의 곳입니다.
    마븐 로컬 창고에 있는 jacocoagent를 지정하고 출력 파일 (jaco.exec) 을 선택할 수 있습니다.
  • integration-test를 실행합니다.
  • $ mvn clean install
    
    integration-test를 중도에 실행합니다.mvn integration-test도 괜찮지만 테스트 후 프로그램이 마운트 해제되지 않았기 때문에 설치를 실행했습니다.
  • 출력 자코코의 보고서
  • $ mvn jacoco:report
    
    integration-test에서 출력된 jacoco.exec를 사용하여 보고서를 생성합니다.

    Missed Instruction은 C0(명령 네트워킹), Missed Branches는 C1(조건 네트워킹)을 나타냅니다.
    파고들면

    이런 느낌.
    녹색: 실행된 명령입니다.
    적: 미집행 명령.
    황: 분지에서 일부 명령만 집행했어요.
    embedded-glassfish를 진행할 때pom에서 jvm 옵션을 지정할 수 없기 때문에glassfish에서java에이전트를 설정하여 수동으로 보고서를 작성합니다.
    WildFly는 Sonar와 조합하여 자동화할 수 있습니다!

    좋은 웹페이지 즐겨찾기