[发明专利]一种软件持续集成方法和系统在审
申请号: | 201710712296.3 | 申请日: | 2017-08-18 |
公开(公告)号: | CN107450933A | 公开(公告)日: | 2017-12-08 |
发明(设计)人: | 司文文;张存昕 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 北京安信方达知识产权代理有限公司11262 | 代理人: | 李红爽,李丹 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 持续 集成 方法 系统 | ||
技术领域
本发明涉及软件开发技术,尤指一种软件持续集成方法和系统。
背景技术
在云计算时代,软件开发过程中,开发成员经常需要把自己工作集成到项目中,通常每个成员每天至少集成一次。如果项目较小,对外部的依赖也相对较小,那么软件集成涉及的流程及所需的系统架构都较简单。但是目前很多软件项目,特别是互联网项目,面临着需求不明确、系统架构复杂、任务分配混乱等一系列问题,从而给持续集成带来许多困难,也给整个项目带来不必要的风险。
综上,现有的持续集成系统无法满足现有复杂软件项目持续集成需求。
发明内容
为了解决上述技术问题,本发明提供了一种软件持续集成方法和系统,通过多分支合并管理持续集成过程,在缩短测试环境持续构建时间的同时,大大提高软件研发的效率,解决了现有的持续集成系统无法满足现有复杂软件项目持续集成需求的问题。
为了达到本发明目的,本发明提供了一种软件持续集成方法,包括:
持续监控版本控制库的开发分支;
在检测到所述开发分支上有新的代码提交时,对新的代码进行验收测试;
在验收测试通过后,将所述开发分支合并至发布分支,进行打包。
优选的,所述版本控制库包含至少两个分支,所述至少两个分支中包含一开发分支与一发布分支。
优选的,在检测到所述开发分支上有新的代码提交时,对新的代码进行验收测试的步骤包括:
在检测到所述开发分支上有新的代码提交时,编译代码,测试代码质量;
编译成功后,对工程进行打包,重启测试环境实例;
进行验收测试,检测所述新的代码涉及的改变是否满足业务需求所定义的验收条件,在满足所述验收条件时判定验收测试通过。
优选的,该方法还包括:
持续监控所述版本控制库的所述发布分支。
优选的,在验收测试通过后,将所述开发分支合并至发布分支,进行打包的步骤包括:
在验收测试通过后,将所述开发分支合并至所述发布分支;
在检测到所述发布分支上发生代码改变时,进行打包操作。
本发明还提供了一种软件持续集成系统,包括:
第一监控模块,用于持续监控版本控制库的开发分支;
测试验收模块,用于在检测到所述开发分支上有新的代码提交时,对新的代码进行验收测试;
打包发布模块,用于在验收测试通过后,将所述开发分支合并至发布分支,进行打包。
优选的,所述版本控制库包含至少两个分支,所述至少两个分支中包含一开发分支与一发布分支,所述测试验收模块包括:
质量测试单元,用于在检测到所述开发分支上有新的代码提交时,编译代码,测试代码质量;
测试环境重启单元,用于在编译成功后,对工程进行打包,重启测试环境实例;
验收测试单元,用于进行验收测试,检测所述新的代码涉及的改变是否满足业务需求所定义的验收条件,在满足所述验收条件时判定验收测试通过。
优选的,该系统还包括:
第二监控模块,用于持续监控所述版本控制库的所述发布分支。
优选的,所述打包发布模块包括:
分支合并单元,用于在验收测试通过后,将所述开发分支合并至所述发布分支;
打包单元,用于在检测到所述发布分支上发生代码改变时,进行打包操作。
优选的,所述版本控制库通过GitHub实现,所述测试验收模块运行于使用Docker搭建的测试环境中,所述打包发布模块运行于使用Jenkins实现的持续集成服务器上。
本发明提供了一种软件持续集成方法和系统,持续监控版本控制库的开发分支,在检测到所述开发分支上有新的代码提交时,对新的代码进行验收测试,在验收测试通过后,将所述开发分支合并至发布分支,进行打包,实现了基于多分支的持续集成管理,解决了现有的持续集成系统无法满足现有复杂软件项目持续集成需求的问题。使用GitHub作为版本控制库,相比于同类项目版本系统,使得版本分支(branch)的合并(merge)十分方便。使用Docker搭建测试环境,实现了秒级的Docker虚拟容器启动,并且对系统资源的利用率很高。另外,Docker的管理,迁移和扩展也更轻松有效。使用Jenkins作为持续集成服务器,使得构建流程的创建非常简便。本发明提供的技术方案在缩短测试环境持续构建时间的同时,大大提高了软件研发的效率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710712296.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于破碎矿石的高效破碎机
- 下一篇:一种齿辊式破碎机的布料系统