分享

阿里面试宝典(二十):持续集成、持续发布,jenkins



问题导读

1.持续集成如何降低风险?
2.如何减少重复过程?
3.持续集成又哪些好处?


上一篇
阿里面试宝典(十九):容器虚拟化技术,Docker思想
https://www.aboutyun.com/forum.php?mod=viewthread&tid=30183



持续集成

好处 1: 降低风险

一天中进行多次的集成, 并做了相应的测试, 这样有利于检查缺陷, 了解软件的健康状况,减少假定。

好处 2: 减少重复过程

产生重复过程有两个方面的原因, 一个是编译、 测试、 打包、 部署等等固定操作都必须要做, 无法省略任何一个环节; 另一个是一个缺陷如果没有及时发现, 有可能导致后续代码的开发方向是错误
的,要修复问题需要重新编写受影响的所有代码。而使用 Jenkins 等持续集成工具既可以把构建环节从手动完成转换为自动化完成, 又可以通过增加集成频次尽早发现缺陷避免方向性错误。

好处 3: 任何时间、 任何地点生成可部署的软件

持续集成可以让您在任何时间发布可以部署的软件。 从外界来看, 这是持续集成最明显的好处, 我们可以对改进软件品质和减少风险说起来滔滔不绝, 但对于客户来说, 可以部署的软件产品是最实际的资产。 利用持续集成, 您可以经常对源代码进行一些小改动, 并将这些改动和其他的代码进行集成。 如果出现问题, 项目成员马上就会被通知到, 问题会第一时间被修复。 不采用持续集成的情况下, 这些问题有可能到交付前的集成测试的时候才发现, 有可能会导致延迟发布产品, 而在急于修复这些缺陷的时候又有可能引入新的缺陷, 最终可能导致项目失败。

好处 4: 增强项目的可见性

持续集成让我们能够注意到趋势并进行有效的决策。如果没有真实或最新的数据提供支持, 项目就会遇到麻烦, 每个人都会提出他最好的猜测。 通常, 项目成员通过手工收集这些信息, 增加了负担, 也很耗时。 持续集成可以带来两点积极效果: (1)有效决策: 持续集成系统为项目构建状态和品质指标提供了及时的信息,有些持续集成系统可以报告功能完成度和缺陷率。 (2)注意到趋势: 由于经常集成, 我们可以看到一些趋势, 如构建成功或失败、总体品质以及其它的项目信息。

好处 5: 建立团队对开发产品的信心

持续集成可以建立开发团队对开发产品的信心,因为他们清楚的知道每一次构建的结果, 他们知道他们对软件的改动造成了哪些影响, 结果怎么样。


手动部署

1.jpg

自动部署

1.jpg



没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /5 下一条