jenkins+jacoco配置代码覆盖率

一、服务器端配置

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

2a、正常情况下,可在服务器中代码部署模块下的default文件夹中,修改tomcat文件如下
936688-20170123171735050-1598756504.png
其中,includes后为代码包路径;port为jacoco的监听端口,用于监听slave发来的dump请求;address为该代码模块的IP;

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

二、jenkins机器配置

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

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

三、坑

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

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

nohup python -m SimpleHTTPServer 12306 &

在slave机器上用wget方式获取classes:
936688-20170124103851566-510782793.png

转载于:https://www.cnblogs.com/suntingme/p/6344709.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值