Jenkins+sonar+cobertura配置

全部软件及手动插件版本

名称

版本

备注

Jenkins

2.32.1

官网下载

Jenkins的sonar插件

2.4(自己下载打包)

https://github.com/SonarSource/jenkins-sonar-plugin/releases/tag/2.4

Sonar

5.6.3

官网下载

Sonar-scanner

2.6.1

CSDN下载

Sonar汉化插件

1.8(自己下载打包)

https://github.com/SonarQubeCommunity/sonar-l10n-zh

Sonar的cobertura

1.9(自己下载打包)

https://github.com/galexandre/sonar-cobertura/tree/version-1.9

Jenkins安装和配置

根据下载的jenkins,可以直接运行安装或放入web容器下启动安装。本次安装中,下载了jenkins的war包并放入tomcat中进行安装。其他配置如:java,git和maven的相关配置不再细说。

安装后需要下载的插件:

1、  git parameter使用git可以选择分支的插件

2、  cobertura plugin 单元测试覆盖率使用的插件

3、  手动安装插件,在插件管理的高级中。下载低版本的sonar,使用maven打包后上传

配置sonar相关插件:

1、  系统管理---> 系统设置中--->配置SonarQube Server

2、  系统管理---> Global Tool Configuration--->SonarQube Scanner

Jenkins创建项目,配置如下:

1、配置参数化构建过程,添加git parameter,配置可选择分支。

2、版本管理选择Git,配置对应的下载路径及账号信息。

3、步骤中添加Invoke top-level Maven targets配置maven,选择maven版本。添加命令

 clean package -Dmaven.test.skip=true cobertura:cobertura

,并配置pom.xml文档路径。

4、步骤中,添加Execute SonarQube Scanner,选择JDK版本,并在Analysis properties中添加信息:

1sonar.projectKey=com:JunitTest //随意命名,不能和jenkins中其他项目同名 2sonar.projectName=JunitTest //项目名称 3sonar.projectVersion=1.0 4sonar.sources=src 5sonar.sourceEncoding=UTF-8 6sonar.language=java

Maven配置时,需要单元测试覆盖率,则去掉_-Dmaven.test.skip=true__。_

SONAR安装配置

创建sonar的mysql 数据库,并添加用户赋予权限:

1CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci; 2 3CREATE USER 'sonar' IDENTIFIED BY 'sonar'; 4 5GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar'; 6 7GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar';

修改配置文件conf/sonar.properties,去掉对应的数据配置注释,根据实际情况修改数据库连接信息。

1sonar.jdbc.username=sonar 2sonar.jdbc.password=sonar 3sonar.jdbc.url=

注意mysql数据的版本,sonar5.6后需要mysql的5.6或更高版本。运行后会出现warning信息:Establishing SSL connection without server's identity verification is not recommended. 这时将配置中的url添加useSSL=true或useSSL=false。

Sonar插件放在项目下extensions/plugins下,重启Sonar即可自动安装使用。

配置SONAR-SCANNER,打开conf中的配置文件sonar-scanner.properties,去掉部分相关配置的注释配置相关的信息,如下:

1sonar.host.url=http://localhost:9000 2sonar.jdbc.username=sonar 3sonar.jdbc.password=sonar 4sonar.jdbc.url=

被测试项目配置

在maven的pom.xml中添加插件

1<plugin> 2 3<groupId>org.codehaus.mojo</groupId> 4 5<artifactId>cobertura-maven-plugin</artifactId> 6 7<version>2.6</version> 8 9<configuration> 10 11<formats> 12 13<format>xml</format> 14 15</formats> 16 17</configuration> 18 19</plugin>
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )