持续集成——持续集成体系介绍

一、软件开发模式

  • 版本迭代,功能逐步增加
  • V1.0,V1.1,…,V2.0,V2.1,

二、持续集成——Continous Integration

  • 持续开发新功能
  • 将新功能集成到主干产品中去

三、持续交付——continuous delivery

  • 持续集成到下一步,将集成后的产品交付给用户
  • 设计、开发、测试、交付
  • 支撑概念-自动化
    • 自动构建、自动测试、自动发布
    • 快速、高效、易回溯
  • 支撑平台-Jenkins

四、持续集成的价值

  • 集成自动化测试、减少重复工作
  • 尽早发现缺陷和修复缺陷,降低风险
  • 形成有机整体,明确阶段交付件

五、常见持续集成方案

5.1、阶段化

image

  • 为不同的构建测试套件建立不同的CI循环周期
  • 单元测试运行时间短,反馈快,所以可以频繁进行
  • 自动化测试的时间较长、占用资源,可适当减少集成次数

5.2、过程式

  • 将每一个步骤单元合并顺序执行
  • 将构建与测试分离以节省时间

5.3、管道式

  • 将所有的过程单元都运行在同一管道的上下文中,代码基线相同
  • 当持续集成服务器发现有新的代码时,会创建一个新的管道
  • 所有的过程单元都在这一个管道中进行
  • 每个单元产生的产物也在该管道中有效