近些年来,持续集成、持续交付以及持续部署这几个热词总是在大家的眼前晃来晃去!在招聘信息和面试过程中也会经常提及!在这里我就用三分钟时间来带大家了解他们!
持续集成(CI:Continuous Integration)
持续集成强调开发人员提交了新代码之后,立刻进行构建、(单元)测试。根据测试结果,我们可以确定新代码和原有代码能否正确地集成在一起。注意:这里的测试重点是指开发人员进行的代码级别测试!
持续交付(CD:Continuous Delivery)
持续交付在持续集成的基础上,将集成后的代码部署到更贴近真实运行环境的类生产环境中。如果测试没有问题,可以继续手动部署到生产环境中。注意:这里的测试重点是指测试人员进行的产品级别的测试!往往在这个测试过程中普遍都会引入测试脚本进行自动化回归测试,主要是进行接口测试和UI测试,当然部分公司也会引入安全测试和性能测试。持续交付能够以较短地周期完成需求的小粒度频繁交付。频繁的交付周期带来了更迅速的对软件的反馈,并且在这个过程中,各个角色密切协作,相比于传统的瀑布式软件团队,更少浪费。
持续部署(CD:Continuous Deployment)
持续部署则是在持续交付的基础上,把部署到生产环境的过程自动化。整个过程无需人工参与!
总结
简单地说,持续集成主要是在开发范围,包括:构建>单元测试;
持续交付涉及开发、测试、运维合作,包括:构建>单元测试>测试环境部署>测试(不涉及生产环境的自动化部署)
而持续部署是在持续交付的基础上的延伸:包括:构建>单元测试>测试环境部署>测试>生产环境部署>生产环境测试(全流程自动化)
网友评论