• springboot代码覆盖JACOCO 亲测可以


    1、下载 jacoco

    官网:https://www.jacoco.org/jacoco/index.html

    2、拷贝 jar 包  (解压即可)

    3、启动 jacocoagent,监控被测项目

    
    java -javaagent:jacocoagent.jar=includes=*,output=tcpserver,port=6300,address=localhost,append=true -jar demo-0.0.1.jar
    #demo-0.0.1.jar为被测项目jar包

    4、cli 包 dump 生成 exec 文件(注意一定要测试完毕之后)

    java -jar cli-0.8.7.jar dump --address 127.0.0.1 --port 6300 --destfile jacoco-demo.exec
    # --address 127.0.0.1 --port 6300 指向jacocoagent启动IP和端口
    # jacoco-demo.exec 为生成exec文件名

    5、cli 包 exec 生成 report 报表

    java -jar cli-0.8.7.jar report jacoco-demo.exec --classfiles D:\code\devops\SBD\target\classes --sourcefiles D:\code\devops\SBD\src\main\java --html html-report --xml report.xml --encoding=utf-8
    #--sourcefiles 和 --classfiles 为本地被测项目源码和字节码路径
    6、覆盖率报告

    点开 report 文件下 index.html

    jacoco 覆盖率,Cov 表示覆盖率

    表格列依次是:元素;未覆盖字节码行数;未覆盖的分支数;圈复杂度;行;方法;类;

    覆盖率标识:

    条件覆盖:红钻:表示未覆盖;黄钻:表示部分覆盖;绿钻:表示全部覆盖;

    行覆盖:全覆盖(绿色),未覆盖(红色),半覆盖(黄色),无视(白色)

    测试代码覆盖率  Jacoco

    https://blog.csdn.net/weixin_42517093/article/details/106339718

    https://mp.weixin.qq.com/s/KRIzu7lnmPZrgHrRywYa-w

    自己实践

    启动监控项目命令时出现    zsh: no matches found

    解决方法: https://blog.csdn.net/Cool_001/article/details/112719537

    这篇我亲测试可以的

    总结:

    java -javaagent:jacocoagent.jar=includes=*,output=tcpserver,port=6300,address=localhost,append=true -jar B_End_Test_Project-0.0.1-SNAPSHOT.jar
    
    
    java -jar jacococli.jar dump --address 127.0.0.1 --port 6300 --destfile jacoco-demo.exec
    # --address 127.0.0.1 --port 6300 指向jacocoagent启动IP和端口
    # jacoco-demo.exec 为生成exec文件名
    
    
    java -jar jacococli.jar report jacoco-demo.exec --classfiles /Users/lucax/Desktop/工作/小工具脚本/B端测试平台/b_end_java_test_project/target/classes --sourcefiles /Users/lucax/Desktop/工作/小工具脚本/B端测试平台/b_end_java_test_project/src/main/java --html html-report --xml report.xml --encoding=utf-8
    
    #--classfiles 和字节码路径  注意要指定到 。。。/target/classes 这个目录
    #--sourcefiles 为本地被测项目源码 注意要指定到 。。。。/src/main/java 这个目录

    开发的时候可以不打包,在IDE 把启动参数加上 ,其余的2个命令也是那么敲

    -javaagent:jacocoagent.jar=includes=*,output=tcpserver,port=6300,address=localhost,append=true

    每次跑完功能,就执行命令,更新 exec文件,更新报告,即后面的2条命令

  • 相关阅读:
    KVM/QEMU简介
    编辑器制作的一些资源
    HRBEU ACM 图论 1006
    zoj 2001
    HRBEU equal
    zoj Integer Inquiry
    HRBEU 字符串 1003
    poj 2736
    SDUT_DP 1003
    zoj Martian Addition
  • 原文地址:https://www.cnblogs.com/kaibindirver/p/16128419.html
Copyright © 2020-2023  润新知