【技术实现步骤摘要】
一种分布式持续集成方法及装置
本专利技术涉及计算机
,具体涉及一种分布式持续集成方法及装置。
技术介绍
持续集成是一种软件开发时间,指开发人员频繁地(一天多次)将代码集成到主干,每次集成通过自动化的流程进行编译、自动化测试、发布等环节。在持续集成中,如果能越快完成持续集成的流程,相关人员就能越快得到反馈,就能在持续集成实践中得到越大的好处。在现有技术中,持续集成流程中的各环节例如编译环节、自动化测试环节均运行在一台服务器上。在这种情况下,如果测试数量比较庞大的话,自动化测试环节运行时间会很比较长,导致得到持续集成结果反馈的速度较慢,从而影响开发效率,且在运行自动化环节的过程中服务器会一直被占用,无法响应其他任务。
技术实现思路
有鉴于此,本专利技术提供一种分布式持续集成方法及装置,以解决现有技术中在持续集成过程中运行自动化测试的时间较长,导致持续集成效率较低的技术问题。为解决上述问题,本专利技术提供的技术方案如下:一种分布式持续集成方法,所述方法包括:获取源代码和测试代码;编译所述源代码生成源代码包;将所述测试代码分解为多个测试代码包;当所述测试代码包的数量大于 ...
【技术保护点】
1.一种分布式持续集成方法,其特征在于,所述方法包括:获取源代码和测试代码;编译所述源代码生成源代码包;将所述测试代码分解为多个测试代码包;当所述测试代码包的数量大于配置值时,将各个所述测试代码包以及所述源代码包分别发送给不同的测试执行端,以使所述测试执行端编译并执行接收到的所述测试代码包以生成所述源代码的测试结果;接收所述源代码的测试结果。
【技术特征摘要】
1.一种分布式持续集成方法,其特征在于,所述方法包括:获取源代码和测试代码;编译所述源代码生成源代码包;将所述测试代码分解为多个测试代码包;当所述测试代码包的数量大于配置值时,将各个所述测试代码包以及所述源代码包分别发送给不同的测试执行端,以使所述测试执行端编译并执行接收到的所述测试代码包以生成所述源代码的测试结果;接收所述源代码的测试结果。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:判断所述测试代码的规模是否超过预设阈值;将所述测试代码分解为多个测试代码包,包括:如果所述测试代码的规模超过预设阈值,将所述测试代码分解为多个测试代码包。3.根据权利要求1所述的方法,其特征在于,所述将各个所述测试代码包以及所述源代码包分别发送给不同的测试执行端,包括:在一台或多台测试服务器中触发启动与所述测试代码包的数量一致的虚拟机和/或虚拟容器,每台所述虚拟机或者所述虚拟容器作为一个测试执行端;将各个所述测试代码包以及所述源代码包分别发送给不同的测试执行端。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:在所述测试执行端编译并执行接收到的所述测试代码包以生成所述源代码的测试结果之后,触发关闭或销毁所述虚拟机和/或所述虚拟容器。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述测试代码包的数量小于或等于所述配置值时,在本地编译并执行所述测试代码包以生成所述源代码的测试结果。6.一种分布式持续集成装置,其特征在于,所述装置包括:获取单元,用于获取源代码和测试代码;第一编译单元,...
【专利技术属性】
技术研发人员:张秋生,
申请(专利权)人:北京国双科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。