Red de conocimiento informático - Material del sitio web - Cómo utilizar Jacoco para contar de forma remota la cobertura del código del servicio Tomcat

Cómo utilizar Jacoco para contar de forma remota la cobertura del código del servicio Tomcat

Instalación de software

Ant

Jacoco

Configuración remota del servicio Tomcat

1: sh Shudown.sh Primero cierre el servicio Tomcat.

2: Modificar la configuración de JAVA_OPTS en bin/catalina.sh.

# -javaagent: seguido de la ruta de instalación de jacoco

# incluye= opción, seleccione el servicio a cubrir

# port= opción, seleccione el puerto que se abrirá

# dirección= opción, la dirección IP de la máquina que ejecuta el servicio Tomcat (si se va a ejecutar en la misma máquina que el servicio Tomcat).

JAVA_OPTS="-javaagent:/ruta/a/tu/jacoco_0.6.4/lib/jacocoagent.jar=includes=com.baidu.*, salida=tcpserver, puerto=8893, dirección=10.81. 14.77"

3: sh startup.sh reinicia el servicio Tomcat.

Si encuentra una excepción al iniciar el programa principal, agregue otro -Xverify: none

JAVA_OPTS="-javaagent:/path/to/your/jacoco_0.6.4/lib/ jacocoagent.jar=". incluye=com.baidu.*, salida=tcpserver, puerto=8893, dirección=10.81.14.77 -Xverify: none"

Configuración de tarea Ant local

Configure la compilación .xml.

lt;?xml version="1.0"?gt;

lt;project name="Lengyu" xmlns:jacoco="antlib:org.jacoco. ant" default="jacoco"gt;

lt;! --ruta de instalación de acoco--gt;

lt; property name="jacocoantPath" value="/home/work / software/jacoco_0.6.4/lib/jacocoant.jar"/gt;

! lt;!--La ruta al archivo .exec final a través del cual Jacoco genera el informe final--gt;

lt;property name="jacocoexecPath" value="/home/work/local/hudson_home/workspace /wg_merchant_oc_regression/jacoco.exec"/gt;

lt; ! ruta--gt;

lt;property name="reportfolderPath" value="E:/Libs/coverage_ant_task/report/"/gt;

lt;!--Remoto Dirección IP del servicio Tomcat--gt;

lt;property name="server_ip" value="10.81.14.77"/gt;

lt;!--El control remoto previamente configurado El puerto abierto por el servicio Tomcat debe ser el mismo que el configurado anteriormente: gt;

lt property name="server_port" value="8893"/gt;

lt;!- - Ruta del código fuente --gt;

lt; property name="checkOrderSrcpath" value="E:/Src/ordercenter/ordercenter-biz/src/main/java/" /gt ;

lt;!--.ruta del archivo de clase--gt;

lt;property name="checkOrderClasspath" value="E:/Src/ordercenter/ordercenter-biz/ target/classes/ com/baidu/ordercenter/service/Impl" /gt;

lt;!

lt;! -- Informe a la hormiga dónde encontrar a Jacoco --gt;

lt;taskdef uri="antlib:org.jacoc

o.ant" Resource="org/jacoco/ant/antlib.xml"gt;

lt; classpath path="${jacocoantPath}"

lt;/taskdefgt;

lt;! --dump task:

De acuerdo con la dirección IP y el número de puerto configurados previamente,

acceda al servicio Tomcat de destino y genere el archivo .exec. -- gt;

lt; nombre de destino="dump"gt;

lt; dirección de volcado="${server_ip}" reset="false" destfile="$ {jacocoexecPath }" port="$ {server_port}" append="true"/gt;

lt;/targetgt;

lt;!--tarea jacoco:

Basado en la ruta del código fuente configurada previamente y la ruta del archivo .class,

Genere el informe de cobertura html final basado en el archivo .exec generado después de volcar --gt;

lt; nombre de destino="report"gt;

lt; eliminar dir="${reportfolderPath}"/gt

lt; / gt;

lt;jacoco:reportgt;

lt;executiondatagt;

lt;file file="${jacocoexecPath}"/gt;

lt;/executiondatagt;

lt;structure name="JaCoCo Report"gt;

lt;group name="Verificar pedido relacionado"gt;

lt;classfilesgt;

lt./gt;

lt;/classfilesgt;

lt;sourcefiles codificación="gbk"gt;

lt;/classfilesgt;

lt; p>

lt; conjunto de archivos dir="${checkOrderSrcpath}"

lt;/sourcefilesgt;

lt;/groupgt;

lt;/ estructuragt;

lt;html destdir="${ reportfolderPath}" encoding="utf-8" /gt;

lt;/jacoco:reportgt;

lt;/targetgt;

lt;/projectgt;

Generar informe de cobertura

Ejecutar volcado de hormigas. Si tiene éxito, obtendrá el siguiente resultado.

[work@st01-ecom-jn2.st01.baidu.com ant]$ volcado de hormigas

Archivo de compilación:/home/work/local/hudson_home/workspace/wg_merchant_oc_regression/ant / build.xml

dump:

[jacoco:dump] Conectándose a /10.81.14.77:8893

[jacoco:dump] Volviendo datos de ejecución a / home /work/local/hudson_home/workspace/wg_merchant_oc_regression/jacoco.exec

CONSTRUCCIÓN EXITOSA

Tiempo total: 0 segundos

Finalmente, ejecute el informe ant.