Jenkins+maven+git+sonar 系统持续集成&代码单測管理

Jenkins的安装
Jenkins是基于Java开发的一种持续集成工具,用于监控持续反复的工作。功能包含:
1、持续的软件版本号公布/測试项目。

2、监控外部调用运行的工作。

1.下载最新的版本号(一个 war 文件)。

Jenkins官方网址: http://Jenkins-ci.org/

2.执行 java -jar jenkins.war(jenkins默认使用的是内嵌的jetty服务,用户也能够布置到其他容器中。

(默认是8080port。能够使用java
-jar jenkins.war --httpPort=8088,作为启动项目的监听port。)

注意:Jenkins 须要执行 Java 5以及以上的版本号。

Jenkins的基本配置

系统设置通过选择Manage Jenkins -》 Configure System

设置Maven的配置文件路径

由于jenkins默认使用的是svn管理项目的,要使用git须要安装git插件。

Manage Jenkins -》 Manage Plugins -》Available -》Git plugins 之后点击安装。之后再回到系统管理页面设置git相应的一些參数信息。

Sonar的安装

从sonar的官网下载最新的版本号http://www.sonarqube.org/

sonar的安装须要JDK5.0以上&须要安装Maven(sonar默认使用的是H2的内嵌数据库,只是在详细的使用中建议使用mysql等数据库)

sonar数据源的配置

更改..../sonarqube-4.5.1/conf/sonar.properties

设置properties文件

sonar.jdbc.username=数据库用户名

sonar.jdbc.password=数据库密码

设置数据库链接

sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=

设置链接池

sonar.jdbc.maxActive=20

sonar.jdbc.maxIdle=5

sonar.jdbc.minIdle=2

sonar.jdbc.maxWait=5000

sonar.jdbc.minEvictableIdleTimeMillis=600000

sonar.jdbc.timeBetweenEvictionRunsMillis=30000

在mysql数据库中创建一个sonar的DB

启动sonar:./sonar.sh start(默认的启动port是9000,在浏览器中打开http://localhost:9000

Sonar的项目測试

在须要sonar统计測试的项目中配置sonar的maven配置

    <properties>
<!-- sonar config-->
<sonar.jdbc.url>jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&autoReconnect=true</sonar.jdbc.url>
<sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver>
<sonar.jdbc.username>username</sonar.jdbc.username>
<sonar.jdbc.password>passwd</sonar.jdbc.password>
<sonar.host.url>http://localhost:9000</sonar.host.url>
<sonar.scm.enabled>true</sonar.scm.enabled>
<sonar.core.codeCoveragePlugin>cobertura</sonar.core.codeCoveragePlugin>
<sonar.cobertura.maxmen>1024M</sonar.cobertura.maxmen>
<sonar.skippedModules>
<!--不须要測试的包-->
</sonar.skippedModules>
</properties>

在相应的项目文件夹下使用mvn sonar:sonar调用sonar程序进行test的測试

Jenkins Sonar的配置

在Jenkins上设置sonar的配置管理,首先须要安装sonar的插件。Manage Jenkins -》 Manage Plugins -》Available -》Sonar Plugin 之后点击安装。

之后在系统设置上配置一些sonar的基本參数信息

Jenkins 项目管理配置

Jenkins项目配置管理



Sonar项目測试管理

启动项目build





查看项目的sonar測试情况



Jenkins+maven+git+sonar 系统持续集成&amp;代码单測管理的更多相关文章

  1. 使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(二)

    前言     上一篇随笔Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(一)介绍maven和nexus的环境搭建,以及如何使用maven和nexus统一管理库 ...

  2. Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(二)

    上一篇随笔Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(一)介绍maven和nexus的环境搭建,以及如何使用maven和nexus统一管理库文件和版本,以 ...

  3. 使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境

    前言 但凡一个略有规模的项目都需要一个持续集成环境的支撑,为什么需要持续集成环境,我们来看一个例子.假如一个项目,由A.B两位程序员来协作开发,A负责前端模块,B负责后端模块,前端依赖后端.A和B都习 ...

  4. Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境

    使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(一) 2015-01-14 20:28 by 飘扬的红领巾, 4322 阅读, 5 评论, 收藏, 编辑 ...

  5. Jenkins+Ant+Git+Jmeter实现持续集成

    个人记录: 基本的配置与Jenkins+Ant+SVN+Jmeter实现持续集成的配置一样,主要在Jenkins的配置上的区别会有所不同 安装的插件: enkins安装好之后,需要为其安装gitlab ...

  6. Jenkins+Maven+Sonar系统持续集成环境部署以及配置

    一.Jenkins介绍以及安装 什么是持续集成?   随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Ag ...

  7. 使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(一)

    前言     但凡一个略有规模的项目都需要一个持续集成环境的支撑,为什么需要持续集成环境,我们来看一个例子.假如一个项目,由A.B两位程序员来协作开发,A负责前端模块,B负责后端模块,前端依赖后端.A ...

  8. Jenkins+Maven+SVN快速搭建持续集成环境

    http://www.cnblogs.com/sunzhenchao/archive/2013/01/30/2883289.htmlhttp://blog.csdn.net/pein_zero/art ...

  9. Jenkins+Maven+SVN快速搭建持续集成环境(转)

    Jenkins是一个可扩展的持续集成引擎,Jenkins非常易于安装和配置,简单易用,下面看看我们是如何几分钟就快速搭建一个持续集成环境吧. 假设我们目前已经有2个maven项目:entities(J ...

随机推荐

  1. (转)dedecms入门

    学dedecms一段时间了,把我的入门体会和大家分享一下. 什么是dedecm cms(内容管理系统):现在有各种内容模型,如书评(包括书名,出版社,评论等字段).cms一般有用户后台,网页的用户可以 ...

  2. Objective-C学习篇04—多态

    多态 多态的概念 有这样一个例子.早上我和同事说口渴了.结果:A同事拿着我的水杯去给我接了一杯水.B同事顺手在饮水机上拿了一次性纸杯给我接了杯水.C同事给了我一瓶他早上刚买的饮料.同事们得到的是同样的 ...

  3. 如何遍历json属性和动态添加属性

    var person= { name: 'zhangsan', pass: '123' , 'sni.ni' : 'sss', hello:function (){ for(var i=0;i< ...

  4. ORACLE数据库多表关联查询效率问题解决方案

    最近在做项目中遇到多表关联查询排序的效率问题(5张以上40W+数据的表),查询一次大概要20多秒,经过一番苦思冥想,处理方案如下: 1.软件设计初期,需要一对一关联的表应该设计在一张大表里,这样虽然字 ...

  5. js实现输入验证码

    html部分: <div> <input type="text" id="input" /> <input type=" ...

  6. jQuery MVC 科室异步联动

    //科室改变,级联医生 js $("#DepartmentId").change(function () { if (isNaN($(this).val())) { $(" ...

  7. (推荐)jquery.pagination.js分页

    序言 本来想自己对这个分页使用做一些总结的,但发现大神们已经总结的很好了.所以给推荐一下. 转自:http://www.cnblogs.com/knowledgesea/archive/2013/01 ...

  8. Android数据库升级、降级、创建(onCreate() onUpgrade() onDowngrade())[4]

    数据库版本升级对软件的管理操作. 我们手机经常会收到xxx软件升级什么的提醒,你的软件版本更新,同时你的数据库对应的版本也要相应的更新. 数据库版本更新需要主要的问题: 软件的1.0版本升级到1.1版 ...

  9. JS 对象、HTML事件处理、JS 类型转换、Date

    1. JS 对象 <script> var Person = new Object(); Person.id = 1; Person.name = "Hello World&qu ...

  10. 002 Spring Restful案例

    1:工程结构 需要注意的是需要额外导入以下三个包: jackson-annotations-2.6.1.jar jackson-core-2.6.1.jar jackson-databind-2.6. ...