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. MVC3中 ViewBag、ViewData和TempData的使用和区别(不是自己写的)

    (网上抄的,并未消化)在MVC3开始,视图数据可以通过ViewBag属性访问,在MVC2中则是使用ViewData.MVC3中保留了ViewData的使用.ViewBag 是动态类型(dynamic) ...

  2. Content-Disposition的使用和注意事项

    转载:http://www.cnblogs.com/jzaileen/articles/1281025.html 最近不少Web技术圈内的朋友在讨论协议方面的事情,有的说web开发者应该熟悉web相关 ...

  3. 你好,C++(35)类是如何藏私房钱的?6.2.4 拷贝构造函数

    6.2.6  类成员的访问控制 类成员包括类的成员变量和成员函数,它们分别用来描述类的属性和行为.而类成员的访问控制决定了哪些成员是公开的,可以被外界访问,也可以被自身访问:哪些成员是私有的,只能在类 ...

  4. C# FTP操作

    using System; using System.Collections.Generic; using System.Net; using System.IO; namespace FTP操作 { ...

  5. DEDE站点从网站根目录移到子目录

    修改DedeCms系统配置参数-站点设置 a.站点根网址修改为:http://域名/子目录 b.网页主页链接:/子目录 修改DedeCms系统配置参数-核心设置 a.安装目录:/子目录 批量修改原数据 ...

  6. CentOS 5.6服务器配置YUM安装Apache+php+Mysql+phpmyadmin

    1. 更新系统内核到最新. [root@linuxfei ~]#yum -y update 系统更新后,如果yum安装时提示错误信息,请执行以下命令修复. [root@linuxfei ~]#rpm ...

  7. android.os.NetworkOnMainThreadException异常处理办法

    网上搜索后知道是因为版本问题,在4.0之后在主线程里面执行Http请求都会报这个错,也许是怕Http请求时间太长造成程序假死的情况吧. 在发起Http请求的Activity里面的onCreate函数里 ...

  8. CodeKata

    http://codekata.pragprog.com/2007/01/code_kata_backg.html#more 背景 你如何成为一个伟大的音乐家?它有助于知道理论,了解仪器的机制.它有助 ...

  9. poj 3114 Countries in War

    http://poj.org/problem?id=3114 #include <cstdio> #include <cstring> #include <queue&g ...

  10. 海园帮忙写的JQUERY功能,实现了我们想要的,我觉得有点屌哟~~

    需求就是为了可以在WEB在线更新代码期间,如果执行时间较长的话, 就在提交按钮之后,按钮变为灰色. 同时,一个DIV里每隔两秒刷新输出. 当更新完成之后(检测文档中的关键字串),按钮变为可提交状态~~ ...