编译、测试、部署自动化为提高代码质量、敏捷迭代交付提供了有效的实践措施。
这里简单记录了自己在工作中搭建CI的一些步骤,作为工作日志的同时也分享一下。
进展
1. 环境搭建 (OK)
2. 建立、运行【编译工程】(OK)
3. 建立、运行【Junit Test Case】,显示Test Result报表(OK)
4. Findbug, PMD, Checkstyle等代码检查(Pending)
环境搭建
1. 安装
a) ubuntu 环境
a) ubuntu 环境
wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get update
sudo apt-get install jenkins
|
b) windows环境: 直接下载jenkins.war
2. 启动 java -jar jenkins.war --httpPort=$HTTP_PORT
3. 配置jenkins jdk环境
![](http://dl2.iteye.com/upload/attachment/0092/9963/af9e5bb2-7bc9-33e9-8dbd-26f77a77005d.png)
4. 配置jenkins maven参数
![](http://dl2.iteye.com/upload/attachment/0092/9965/45787e82-8855-385e-9a32-b5582f6af8d5.png)
![](http://dl2.iteye.com/upload/attachment/0092/9967/f055cdd9-d947-3358-be3b-207be241f9bd.png)
创建【编译项目】
1. 新建工程
![](http://dl2.iteye.com/upload/attachment/0092/9969/ebeecb5c-f24c-3d9d-810b-03186c81199c.png)
2. 配置SVN URL
![](http://dl2.iteye.com/upload/attachment/0092/9995/977fa95b-85bc-3d2a-9749-6514389dcb6f.png)
3. 配置前置任务(如有)
4. 配置主要任务
![](http://dl2.iteye.com/upload/attachment/0092/9973/e32f8be7-b2e5-3194-b3ef-ded839fe1850.png)
5. 配置junit(建议另起工程跑unit test)
6. 配置代码检查过程,结合PMD, findbug, checkstyle使用(暂无)
7. 查看构建过程控制台输出
![](http://dl2.iteye.com/upload/attachment/0092/9975/267415ba-7c38-3d1b-a401-313df18aabc2.png)
创建【Unit Test项目】
1. 新建 maven:test 工程
![](http://dl2.iteye.com/upload/attachment/0092/9977/89ca28d0-2ba0-354f-bbd5-516072f426a1.png)
2. 配置依赖:
【Unit Test】工程依赖【编译工程】
![](http://dl2.iteye.com/upload/attachment/0092/9979/b7e69d0d-05b6-3260-977a-036aa0e065af.png)
3. 配置 Test 任务
![](http://dl2.iteye.com/upload/attachment/0092/9983/eeacf079-e74b-348d-bdb9-b327ec4702f8.png)
4. 配置邮件通知
![](http://dl2.iteye.com/upload/attachment/0092/9985/a1b97136-73e5-371c-b663-eba3c1927247.png)
5. 查看运行结果
![](http://dl2.iteye.com/upload/attachment/0092/9987/9577fcbc-ac7d-3030-9989-58ba92e7892e.png)
![](http://dl2.iteye.com/upload/attachment/0092/9989/f8396094-f630-323c-a916-b5509251cbe3.png)
![](http://dl2.iteye.com/upload/attachment/0092/9991/061a2c9b-10dc-31a2-8ed4-3c41ebec63f4.png)