总述
CI(continue-integration)持续集成,CD(continue-deliver)持续交付流程是为了提高开发测试和发布的效率,让开发的各个环节得到有效的控制。
CI-CD的发展历程
在没有CI-CD流程以前,代码的生产到发布一般先需要由产品经理制定需求,然后在会上和开发一起讨论开发周期和目标,之后由开发进行功能的开发,最后由测试针对各具体的需求进行测试,最后交给运维进行产品的发布。
看似简单的流程实际走起来却很复杂,因为在开发过程中产品会随时修改需求的细节,导致功能的变更,给后续开发和测试的流程带来一定影响。在产品发布前,测试需要进行功能测试并反馈开发修复bug,之后再进行回归测试。在经历了修bug测bug的反复操作后终于让产品上线,然而上线后又会突发了一系列bug导致
糟糕的产品体验。
为了改变原有质量问题,产品开发不再规定具体的哪个时间点build版本,而是要求凡是提交好的版本都应该满足发布现场的要求。因此要求开发在开发阶段就要写好测试用例,测试没问题了再提交到git仓库,保证主线的功能一直都是直接发布使用的。因此需要有一套持续交付的流程。
如何作出改变:
1.引入构建工具
常用CI工具
比较常用的有Jenkins、Travis CI