持续集成这个岗位是干什么的 ?

作者:成风
链接:https://www.zhihu.com/question/61871192/answer/246679082
来源:知乎
著作权归作者所有。

持续集成工作负责把不同模块代码集成起来的,再发出一个能用的版本。配置管理、环境搭建、代码部署、自动化测试、发布等等,很多工作都和持续集成有关。最开始要有一个持续集成的工具,通常是Jenkins。这个工具呢,本身没什么太厉害的功能。但提供了很多插件,让整个流程上用到的各种工具都可以被他调用。然后它提供了一个master-slave机制让你管理你的持续集成任务的运行。要有一个代码库,现在通常是git,历史遗留项目可能svn或更古老的库。不管这个库有没有专职配置管理人员管理,持续集成人员都得会用。然后要有待集成程序的运行环境,infra部门负责(如果你公司有这个部门的话)。老系统可能就是一些电脑。新系统可能是云。这些个环境可能有专人维护。做持续集成的人经常要和他们打交道。所以多多少少要懂一点计算机网络、linux等。然后代码从git里出来要把他打包部署到环境上。这个打包可能用maven(java项目)也可能用其他各种打包的工具,(我们以前自制工具为主)。如果有配置管理人员,他们会搞定。然后你就把打好包的代码部署上去。怎么部署?可能有开发或者其他角色的人写了脚本。做持续集成的人多多少少要懂一点吧。可能简单的系统你把war包扔上去就完事了。复杂的呢,可以很复杂。部署好了跑起来了。然后要测试。没测过的版本是没用的。一般有测试人员已经写好了脚本。放进去跑起来。这里可能有一大堆工具。我以前就是做这一环的。并且前面的环节也没有专门的持续集成人员。测完了,要分析。持续集成的系统越大,分析测试结果时间越长。要分析的东西越多。测试通过了之后要发布。可能要把代码部署到生产环境。或者通知专门管发布的人哪个版本可以用了。这样,只是一次集成。持续集成重点在持续。我们以前,一个产品一天出十几个版本,仔细测一两个版本。隔若干天发布一个正式的版本。然后每天要弄各种环境,和各角色的人打交道。不过这也算是大公司才会有的比较成熟的持续集成了。产品越复杂,持续集成越有活可干。如果是测试人员,最好对这个流程各种角色做的事情都要有一定了解。可能接触到十七八个工具都不算多。再好好把握自动化测试这个关键点,没测过的版本都是没用的。

持续集成实践就是:1、从统一的代码仓库里checkout代码,编写业务逻辑和对应的单元测试。2、在代码被commit前,先在本地进行构建,确保编译通过、单元测试通过、静态扫描通过等等,然后才commit。3、接下来,一边继续写代码,一边关注持续集成系统给出的反馈。如果遇到构建失败,尽快解决问题,避免影响项目里其它同事的工作。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值