Hudson可扩展持续集成引擎
参考文章:http://blog.csdn.net/dazhi_100/article/details/11629133
极限编程中一项建议实践便是持续集成,持续集成是指在开发阶段,对项目进行持续性自动化编译、测试,以达到控制代码质量的手段。
持续集成提供了及时发现问题、追踪问题、修复问题的机制,他替代了传统的在所有代码编写完毕后才提交QA部门进行测试的方法。
持续集成对单元测试较为依赖,测试覆盖率越高,单元测试越准确,越能体现持续集成的效果。持续集成主要在以下方面提供好处;
1、持续自动化测试(持续集成可通过时间间隔触发,或其他方式触发)
2、跟踪工程健康状况
3、强制性单元测试用例,验收测试用例等
4、静态代码检测,生成测试报告
Hudson是一款轻量级、易扩展、易配置的持续集成平台,该集成平台maven2有良好的支持,并且扩展插件丰富,包括findbug,PMD静态分析插件、emma单元测试覆盖率插件、junit测试报告插件等等。
下面我们以Hudson持续集成平台为例,主要讲解怎么安装hudson和hudson扩展插件的使用,并以maven2工程为例,建立新作业。
下载Hudson的war包,http://hudson-ci.org/ 在tomcat环境里,在conf\Catalina\localhost 中新建配置文件hudson.xml,配置如下
<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="yourPath/hudson.war" path="hudson" reloadable="false">
</Context>
yourPath为hudson.war的目录路径。
启动tomcat,访问http://localhost:8080/hudson便能访问我们的持续集成应用了。Jboss环境中,复制war包到default目录下即可。如下为安装好以后的hudson访问界面。

应用搭建好以后,我们按一下步骤操作
一、hudson全局配置信息
hudson配置,比如JDK的安装目录、Maven的安装目录等、SMTP服务器和用户密码等(用于编译失败提醒开发人员)
进入“系统管理”》“系统设置”,对maven的安装目录、jdk的安装目录进行设置,其他保持默认,如若需要高级配置,请打开问号下的提示信息,按照提示开启相应的选项。如下图为maven和jdk的配置信息。

二、新建任务和任务配置
hudson任务表示一个持续集成的项目,任务配置包括项目版本控制分支、集成任务触发器(何时触发项目集成)
进入“新建任务”,如下图选择maven2项目,并输入任务名称

点击保存后,进入任务“配置”项
任务配置包括主要的SVN的项目分支配置、项目集成触发机制配置和编译目标配置。配置后如下所示

一个集成任务就这样简单的配置好了,目前能持续的编译和测试,在发现测试不通过或者编译不通过的时候,由邮件发送给相关开发者(需自行配置)。
三、添加插件和运用插件
配置一个任务后,我们希望hudson不仅可以通过集成发送测试报告、编译问题,还需要掌握静态代码的分析结果,比如findbus或pmd的分析结果,再或则是单元测试覆盖率的相应报告。接下来,我们安装findbus插件。
进入“系统管理”》“管理插件”,如下

我们在“可选插件”中找到findbugs插件,analysis-core插件,并下载。进入高级选项。上传并安装如下:

重启系统,手动触发集成,我们可以见到最终的集成环境,包括插件的图示等,至此,hudson安装完毕,其中还有部分功能有待大家去研究和使用,插件也丰富多彩。

Hudson可扩展持续集成引擎的更多相关文章
- Hudson + SVN + Maven 持续集成实现自动化编译、打包、部署(over SSH 和 Deploy war/ear to a container 两种部署方式)
下载hudson ,安装部署http://hudson-ci.org/ 将下载的hudson-3.3.3.war放到tomcat的webapps目录下并启动tomcat,输入地址访问 点击Instal ...
- Jenkins 2.26 发布,可扩展的持续集成引擎
Jenkins 2.26 发布了.Jenkins 主要用于持续.自动地构建/测试软件项目,如CruiseControl与DamageControl,监控一些定时执行的任务.更新内容: Allow Co ...
- 持续集成篇 --Hudson持续集成服务器的安装配置与使用
样例项目参考视频教程:http://www.roncoo.com/course/view/85d6008fe77c4199b0cdd2885eaeee53 IP:192.168.4.221 8G内存 ...
- Hudson持续集成服务器的安装配置与使用
Hudson只是一个持续集成服务器(持续集成工具),要想搭建一套完整的持续集成管理平台, 还需要用到前面课程中所讲到的 SVN.Maven.Sonar等工具,按需求整合则可. 1.安装 JDK并配置 ...
- Dubbo入门到精通学习笔记(六):持续集成管理平台之Hudson 持续集成服务器的安装配置与使用
文章目录 安装Hudson 使用Hudson tips:自动化部署 附录:两个脚本 安装Hudson IP:192.168.4.221 8G 内存(Hudson 多个工程在同时构建的情况下比较耗内存) ...
- Hudson持续集成管理平台搭建
IP: 10.0.70.106 8G 内存 (Hudson 多 个 工程 在 同 时 构建 的情况下 比 较耗内存) 环 境: CentOS 6.5 . JDK7 注:Hudson 只是一个持续集成 ...
- 持续集成工具hudson【转载】
第一节 我的理解 项目中使用了hudson,那么hudson是处在怎样的一个地位呢? 首先就我自己的认知,项目中hudson的作用有一下几点: 1.获取svn服务器上的最新代码: 2.把最新代码编译打 ...
- Jenkins+Gradle实现android开发持续集成、打包
Jenkins简介 Jenkins 是一个开源项目,提供了一种易于使用的持续集成系统,使开发者从繁杂的集成中解脱出来,专注于更为重要的业务逻辑实现上.同时 Jenkins 能实施监控集成中存在的错误, ...
- Jenkins持续集成【简介】
1.1 目前主流网站部署的流程 目前主流网站部署方法,通过Hudson/Jenkins工具平台实现全自动部署+测试,是一个可扩展的持续集成引擎,是一个开源软件项目,旨在提供一个开放易用的软件平台 ...
随机推荐
- UOJ150 运输计划
运输计划(transport.cpp/c/pas)[问题描述]公元 2044 年,人类进入了宇宙纪元.L 国有 n 个星球,还有 n-1 条 双向 航道,每条航道建立在两个星球之间,这 n-1 条航道 ...
- 【Beta阶段】发布说明
在经历Beta阶段紧张的开发后,本次Beta阶段取得的成果虽然不如Alpha阶段多,但是也算是做到了稳中求进,一共预想了三个feature,最终做出了预想的两个feature. 新功能说明 新的主页: ...
- POJ3070Fibonacci(矩阵快速幂+高效)
Fibonacci Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 11587 Accepted: 8229 Descri ...
- POJ1703Find them, Catch them
Find them, Catch them Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 37722 Accepted: ...
- 更改动软代码生成器模板 验证Model数据合法性
1.第一个模板 判断字段是否为空 类 IsNullableType.cmt static public partial class CommonType { public static bool Is ...
- cheerio, dom操作模块
cheerio 为服务器特别定制的,快速.灵活.实施的jQuery核心实现. Introduction 将HTML告诉你的服务器 var cheerio = require('cheerio'), $ ...
- Python socket编程之一:
soket 编程步骤 # -*- coding: utf-8 -*- ################################################################# ...
- Tomcat入门指南
转自javaresearch.com由timgball 整理 Tomcat是一个免费的开源Web服务器,最新版本是5.5.1,支持Servlet2.4,JSP2.0,非常适合初学者学习Java Web ...
- css 文字换行
换行word-wrap: break-word 新起一行对长单词进行断句word-break:break-all 本行对长单词进行断句 不换行,强制一行white-space:nowrap table ...
- MySQL Cluster(MySQL 集群) 初试(转)
作/译者:叶金荣(imysql#imysql.com>),来源:http://imysql.com,欢迎转载. 作/译者:叶金荣(Email: ),来源:http://imysql.cn,转载请 ...