一种代码持续集成方法和代码持续交付方法技术

技术编号:21088939 阅读:37 留言:0更新日期:2019-05-11 09:44
本申请公开了一种代码持续集成方法和代码持续交付方法。代码持续集成方法应用于代码评审工具Gerrit,接收开发人员提交的代码后将代码输入编译工具,代码先后通过编译工具和静态扫描工具;接收编译工具和静态扫描工具对代码的第一执行结果和第二执行结果;根据第一执行结果和第二执行结果确定代码是否可用于持续交付。开发人员可通过Gerrit平台获知第一执行结果和第二执行结果,从而在代码持续集成的过程中可实时获知代码的问题,不必等到代码合并到远程代码仓库后再确认问题。相比现有技术,该方法能够提早暴露代码持续集成过程中发现的问题,使得开发人员得以及时对代码进行修正,进而有效提升了代码及软件产品的交付速度。

【技术实现步骤摘要】
一种代码持续集成方法和代码持续交付方法
本申请涉及软件工程
,特别是涉及一种代码持续集成方法和代码持续交付方法。
技术介绍
代码持续集成是一种软件开发实践。软件研发团队的成员经常需要集成他们的代码编写工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次代码集成都通过自动化的构建,包括:编译,发布,自动化测试等流程来验证代码。持续集成的目的是尽早发现代码集成错误,避免或减少代码集成问题。代码持续交付是一种软件工程手法,让软件产品在一个短周期内完成产出,以保证软件可以稳定、持续的保持在随时可以释出的状况。持续交付的目标在于让软件的建置、测试与释出变得更快以及更频繁。这种方式可以减少软件开发的成本与时间,减少风险。持续交付需要将集成后的代码部署到“类线上环境”中,即部署到贴近真实运行的环境中。代码持续集成后需要合并到远程的代码仓库中,而在此之前,代码持续集成的问题对于开发人员来说,是不可知的。开发人员只能等到合仓后,通过邮件或平台通知的方式获知代码持续集成产生的问题。因此,开发人员获知的代码持续集成暴露的问题是具有后滞性的,开发人员只能在代码合仓后解决代码问题,本文档来自技高网...

【技术保护点】
1.一种代码持续集成方法,其特征在于,应用于代码评审工具Gerrit,所述方法包括:接收开发人员提交的代码;将所述代码输入编译工具,所述代码先后经过所述编译工具和静态扫描工具;分别接收所述编译工具和所述静态扫描工具对所述代码的第一执行结果和第二执行结果;根据所述第一执行结果和所述第二执行结果确定所述代码是否可用于持续交付。

【技术特征摘要】
1.一种代码持续集成方法,其特征在于,应用于代码评审工具Gerrit,所述方法包括:接收开发人员提交的代码;将所述代码输入编译工具,所述代码先后经过所述编译工具和静态扫描工具;分别接收所述编译工具和所述静态扫描工具对所述代码的第一执行结果和第二执行结果;根据所述第一执行结果和所述第二执行结果确定所述代码是否可用于持续交付。2.根据权利要求1所述的代码持续集成方法,其特征在于,所述代码经过所述静态扫描工具后,还经过单元测试工具;所述方法还包括:接收所述单元测试工具或行覆盖率统计工具反馈的第三执行结果;当所述第三执行结果由所述单元测试工具反馈时,所述第三执行结果为所述单元测试工具对所述代码的单元测试结果;当所述第三执行结果由所述行覆盖率统计工具反馈时,所述第三执行结果为所述行覆盖率统计工具对所述单元测试工具所执行测试的行覆盖率的统计结果;所述根据所述第一执行结果和所述第二执行结果确定所述代码是否可用于持续交付,具体包括:根据所述第一执行结果、所述第二执行结果和所述第三执行结果确定所述代码是否可用于持续交付。3.根据权利要求2所述的代码持续集成方法,其特征在于,还包括:接收所述代码的人工评审结果;所述根据所述第一执行结果、所述第二执行结果和所述第三执行结果确定所述代码是否可用于持续交付,具体包括:根据所述第一执行结果、所述第二执行结果、所述第三执行结果和所述人工评审结果,确定所述代码是否可用于持续交付。4.根据权利要求3所述的代码持续集成方法,其特征在于,所述第一执行结果为评分形式;如果所述编译工具对所述代码编译成功,则所述第一执行结果为第一分数;如果所述编译工具对所述代码编译失败,则所述第一执行结果为第二分数;所述第一分数大于所述第二分数。5.根据权利要求4所述的代码持续集成方法,其特征在于,所述第二执行结果为评分形式;如果所述静态扫描工具确定所述代码不满足第一类条件集中的任意一个条件,则所述第二执行结果为所述第二分数;如果所述静态扫描工具确定所述代码满足所述第一类条件集中的所有条件,但是不满足所述第二类条件集中的任意一个条件,则所述第二执行结果为第三分数;所述第三分数小于所述第一分数且大于所述第二分数;如果所述静态扫描工具确定所述代码满足所述第一类条件集中的所有条件,且满足所述第二类条件集中的所有条件,则所述第二执行结果为所述第一分数。6.根据权利要求5所述的代码持续集成方法,其特征在于,所述第三执行结果由所述行覆盖率统计工具反馈,且所述第三执行结果为评分形式;如果所述单元测试工具所执行测试的行覆盖率低于第一比例值,则所述第三执行结果为所述第二分数;如果所述单元测试工具所执行测试的行覆盖率不低于所述第一比例值且不高于第二比例值,则所述第三执...

【专利技术属性】
技术研发人员:王倩男
申请(专利权)人:睿驰达新能源汽车科技北京有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1