本文由《持续集成实践》一书总结而来。
一、持续集成
1、什么是持续集成?
持续集成,即 Continuous integration
,简称「CI」,是极限编程中的一种软件开发实践。
它通过自动化的构建(包括编译、发布和自动化测试)实现不间断的进行集成工作,从而尽快地发现集成错误。
- 持续:不间断的,每日多次进行;
- 集成:代码和代码之间的集成,软件各个过程的集成(开发、部署、测试等);
持续集成的主要目的:
- 一是“频繁集成”
- 二是“反映代码质量”
2、持续集成的核心价值
持续集成的价值有很多,在我看来,最核心的价值有三方面:
- 尽早发现缺陷,尽快解决缺陷,减少风险;
- 构建常用功能,集成自动化测试,减少重复劳动;
- 把所有看似散乱的工作有机的形成一个整体,明确定义阶段性交出物,将职责的定义清晰化。
二、持续集成方案
最初,我们的代码不多,自动化脚本也比较简单,在一台机器上运行所有的测试也仅需要几分钟,构建套件的运行顺序一般是:CheckStyle -> Compile -> UnitTest -> FunctionTes