持续集成的英文名为:Continuous Integration,即不断地去集成提交,布暑,测试
传统的测试一般都是通过界面的点击来达到的测试的目的,即等到各个模块开发好之后再进行测试,这样的导致的后果是有些早期应该发现的Bug等到后期才发现,开发人员必须花费大量的时间来定位bug的根源,加上有些项目的复杂性,问题的根源比较难定位,甚至出现不得不调整底层架构的情况,最终的结果可想而知,会导致项目发布的延迟。
我认为持续集成主要作用是把项目风险的持续降低,为什么呢,传统的项目测试模式都是通过界面来达到测试目的,这种方式最大的问题是前期无法知道这个项目中会出现什么样的风险,项目的质量完全依赖开发人员的个人能力,没法校验过程中的成果。持续集成就是频繁的将开发人员源码的改动或增加进行测试,达到风险分解的效果,增加按时保质发布的信心。
持续集成包括需要以下几点:
  • 一套配置环境,需要所有的人都能访问到最新代码库
  • 支持自动化,使任何时候,都可以自动布暑,测试
  • 可以使开发人员频繁提交,修改过的代码,使问题尽快发现
  • 一套符合项目需求的bug反馈,解决机制
这里最关键的我觉得是第二条,读取源代码,编译,连接,测试,报告整个过程都是自动产生的,而这个过程中最能够保证质量的也是测试,其它的都可以用框架来实现。
持续集成持续测试机制如下图:
cc