• jenkins+jacoco配置代码覆盖率


    一、服务器端配置

    1、在代码部署服务器中安装jacoco,用于手工/接口测试覆盖率监听收集

    2a、正常情况下,可在服务器中代码部署模块下的default文件夹中,修改tomcat文件如下

    其中,includes后为代码包路径;port为jacoco的监听端口,用于监听slave发来的dump请求;address为该代码模块的IP;

    2b、像我们公司集成了部署工具,则需要直接在集成工具中添加jvm参数,否则在项目重新部署后tomcat文件会被覆盖

    二、jenkins机器配置

    1、在jenkins上创建jacoco的job,添加代码下载路径及slave机器地址;

    2、运行一次job,将代码下载至slave机器,在代码所在根目录配置build.xml
    3、在jenkins的job上添加

    三、坑

    1、项目的代码量大概在5G左右,jenkins下载时默认超时时间为10分钟,超时报错timeout,需在job中源码管理模块下重新设置超时时间

    2、由于我跑测试用例在测试环境,一开始拉代码时拉的是master分支(对应线上环境)导致覆盖率始终不匹配,后改为dev分支。
    3、不知公司的部署平台是怎么编译的,一开始在jenkins直接用mvn install编译结果不匹配,于是试着将服务器端已经编译的代码直接拷贝过来后得到覆盖率结果,因此放弃了jenkins的编译,采用直接拷贝服务器上编译的classes的方法:
    此时可在服务器上项目部署所在的webroot上层文件中执行python起一个http进程:

    nohup python -m SimpleHTTPServer 12306 &
    

    在slave机器上用wget方式获取classes:

  • 相关阅读:
    Python爬虫 -- 抓取电影天堂8分以上电影
    Kotlin & Vertx 构建web服务
    js promise 风格编程
    Java Config 下的Spring Test方式
    (转)SpringSecurity扩展User类,获取Session
    maven 打包 xml文件
    EL表达式的操作符
    mysql 去除空格
    spring security
    GoogleApis 屏蔽
  • 原文地址:https://www.cnblogs.com/suntingme/p/6344709.html
Copyright © 2020-2023  润新知