hudson+maven+sonar+svn快速搭建持续集成服务(一)

持续集成定义:

持续集成是一种软件开发实践,即团队开发成员经常集成它们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成通过自动
化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误并予以修改,得以让团队能够更快的开发内聚的软件。

 

持续集成价值:

    
1. 减少风险

         一天中进行多次的集成,并做了相应的测试,这样有利于检查缺陷,

了解软件的健康状况,减少假定。 

   
2. 减少重复过程

         通过自动化的持续集成可以将集成中重复的动作都变成自动化的,

无需太多人工干预,让人们的时间更多的投入到动脑筋的、更高价值的

事情上。

    
3. 任何时间、任何地点生成可部署的软件

         持续集成开发可以在任何时间发布可以部署的软件。利用持续集成,

可以经常对源代码行一些小改动,并将这些改动和其他的代码进行集成。

如果出现问题,项目成员马上就会被通知到,问题会第一时间被修复。

不采用持续集成的情况下,这些问题有可能到交付前的集成测试的时候

才发现,有可能会导致延迟发布产品,而在急于修复这些缺陷的时候又

有可能引入新的缺陷,最终可能导致项目失败。

  
4. 增强项目的可见性

       持续集成让我们能够注意到趋势并进行有效的决策。

     持续集成可以带来两点积极效果:   

        (1)有效决策:持续集成系统为项目构建状态和品质指标提供了及时的信息,有些持续集成系统可以报告功能完成度和缺陷率。   

        (2)注意到趋势:由于经常集成,我们可以看到一些趋势,如构建成功或失败、总体品质以及其它的项目信息。 

 
5. 建立团队对开发产品的信心

      
   持续集成可以建立开发团队对开发产品的信心,因为他们清楚的知道每一次构建的结果,他们知道他们对软件的改动造成了哪些影响,结果怎么样。

 

 

持续集成要素及原则

 

     持续集成的要素

       1.统一的代码库 

   2.自动构建   

    3.自动测试   

    4.每个人每天都要向代码库主干提交代码   

    5.每次代码递交后都会在持续集成服务器上触发一次构建   

    6.保证快速构建   

    7.模拟生产环境的自动测试   

    8.每个人都可以很容易的获取最新可执行的应用程序   

    9.每个人都清楚正在发生的状况   

   10.自动化的部署

 

       持续集成的原则

1.  所有的开发人员需要在本地机器上做本地构建,然后再提交的版本

控制库中,从而确保他们的变更不会导致持续集成失败。  

     2. 开发人员每天至少向版本控制库中提交一次代码。   

     3. 开发人员每天至少需要从版本控制库中更新一次代码到本地机器。   

     4. 需要有专门的集成服务器来执行集成构建,每天要执行多次构建。   

     5. 每次构建都要100%通过。   

     6. 每次构建都可以生成可发布的产品。   

     7. 修复失败的构建是优先级最高的事情。

 

 

posted on 2012-09-10 16:36 Nirvana reborn 阅读(1707) 评论(0)  编辑  收藏 所属分类: ★持续集成


只有注册用户登录后才能发表评论。


网站导航:
 
<2012年9月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

导航

统计

  • 随笔 - 23
  • 文章 - 0
  • 评论 - 46
  • 引用 - 0

公告

我好喜欢它,
我的 QQ 66013804
我想做技术流,可是我很懒,
博客新地址:<a href="http://cobaya.cn/" >

随笔分类(19)

文章档案(1)

博主链接

最新评论

阅读排行榜