Jacoco进行远程覆盖率统计

不问归期 提交于 2019-12-23 12:15:25

首先下载jacoco的jar包及ant的jar包 jacoco下载,

jacoco的jar包上传到服务器(我这里用的是jacoco0.8.5)

在linux的启动脚本增加如下红色字体配置:(对应配合Java_opts也可)

nohup java -Xbootclasspath/a:/conf/ -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005  -Dspring.config.location=conf/application.yml,conf/datariver.properties -Ddatariver.conf=conf/   -javaagent:/root/jacoco-0.8.5/lib/jacocoagent.jar=includes=*,output=tcpserver,port=8044,address=192.168.144.174 -jar dataexplorer-web-1.5.0-SNAPSHOT.jar >> /dev/null 2>&1 &
 

本地配置:

ant的bin目录下配置build.xml:

build.xml

<?xml version="1.0" encoding="UTF-8"?>
<project name="plate_id_sample_service" xmlns:jacoco="antlib:org.jacoco.ant">
    <taskdef uri="antlib:org.jacoco.ant" resource="org/jacoco/ant/antlib.xml">
        <classpath path="D:\DataRiver\jacoco\CodeCoverage\jacoco\lib\jacocoant.jar"/>
    </taskdef>
    
    <target name="dump">
        <!-- address和port和catalina.bat设置保持一致,destfile设置jacoco.exec保存地址 -->
        <jacoco:dump address="192.168.144.174" reset="true" port="8044" destfile="D:\DataRiver\jacoco\jacoco.exec"/>
    </target>
    
    <target name="report">
        <jacoco:report>                        
            <executiondata>
                <file file="D:\DataRiver\jacoco\jacoco.exec"/>
            </executiondata>
            <structure name="Example Project">
                <!-- 可以按软件功能模块设置多个group,方便在report中查看 -->
                <group name="DataExplorer">           
                    <classfiles>
                        <!--.class文件路径,可以放在客户端-->
                        <fileset dir="D:\DataRiver\DataRiver_Git\datariver-dataexplorer\dataexplorer-apps\dataexplorer-web\target\classes"/>
                    </classfiles>
                    <sourcefiles encoding="gbk">
                        <!--源代码路径,可以放在客户端-->
                        <fileset dir="D:\DataRiver\DataRiver_Git\datariver-dataexplorer\dataexplorer-apps\dataexplorer-web\src" />
                    </sourcefiles>
                </group>
            </structure>
            <!-- report文件保存地址 -->
            <html destdir="D:\DataRiver\jacoco\coveragereport"/>                   
        </jacoco:report>
    </target>
</project>

linux上启动项目后,执行并操作功能之后,在本地打开命令行,切换到ant的bin目录,执行ant dump,然后执行ant report,在配置的report保存地址可以看到覆盖率详情

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!