您的位置:首页 > 其它

持续集成_3_简介

2011-07-01 14:15 106 查看
正式进入持续集成的系列介绍

持续集成 (CI) 是什么?

引用Martin Fowler的描述,持续集成是一种开发实践,即团队的成员经常集成他们的工作,通常每个成员每天至少集成一次---这导致每天发生多次集成。每次集成都通过自动化的构建 (包括测试)来验证,从而尽快的检测出集成错误。

谁应该关注持续集成?

软件工程所有关系人都应该关注持续集成。

对于开发人员,CI可以让你把更多的精力花在做好软件上,而不是每天浪费大量时间解决一些集成过程中产生的问题。

对于测试人员,CI可以保持测试一直持续稳定的进行,让你更加有效、合理的展开工作。避免出现有时候一天要测试好多版本,有时候连着几天没有版本可测的情况。

对于数据库管理员,CI帮你合理的对数据库的版本进行了控制,并且自动执行了可执行的脚本文件。你可以用更多的时间优化一些数据结构,或者协助开发人员对Sql语句的执行速度进行优化。而不用整天忙着将数据库从一个环境导到另一个环境,或者面对一堆等着你执行脚本文件的开发、测试人员。

对于运维,你只需要告诉CI,这次想发布哪个项目,版本号多少,想发布到哪个环境即可,同时可视化的管理配置文件。不用每次发布前打开一张密密麻麻的环境IP对应表,然后再copy、copy、copy。最后还要改一些不知所云的配置文件。

对于领导,公司有很多项目在同时进行,想了解各项目进展情况的时候,只需要打开一个浏览器,或者查看CI发来的邮件。就很容易知道项目的真实进展情况。而不用很费力的理解开发人员描述的:“大概还有30%就做完了”究竟是什么意思。

持续集成包括哪些内容?

持续编译
代码提交到SVN后,CI立即进行编译,发现问题后及时反馈给相关人员。确保问题在第一时间被解决。而不是等到这个问题对项目产生了影响后再解决。

持续测试
编译通过后,自动进行一系列的测试。保证软件能够顺利的通过所有的单元测试、组件测试、功能测试、系统测试。并且在测试完备的情况下,通过测试的包是可随时发布的。

持续数据库集成
将数据库脚本视同代码文件,接受SVN的版本控制。保证代码和脚本文件能够对应,避免找到代码包,找不到对应数据库的尴尬。同时在系统集成时自动执行数据库脚本。并且在遇到问题时及时通知相关人员解决。

持续部署
通过上述过程后,即时对系统进行部署,确保整个工程是一个可运行的整体。而不是左一块右一角的零碎文件。

持续审查
随时保持代码的整洁,清爽。加速团队内的代码沟通,将重构的概念引入到日常编码工作中去,同时也可避免非战略性的、劳民伤财的重做工作。

持续反馈
随时将项目的情况通过各种方式反馈出来,比如邮件、大屏幕、音响等等。让项目所有的关系人可很方便、甚至是被迫的了解当前各项目的进展情况。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: