CN112148269A - 研发持续集成方法、装置、计算机设备及存储介质 - Google Patents

研发持续集成方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN112148269A
CN112148269A CN202011138926.9A CN202011138926A CN112148269A CN 112148269 A CN112148269 A CN 112148269A CN 202011138926 A CN202011138926 A CN 202011138926A CN 112148269 A CN112148269 A CN 112148269A
Authority
CN
China
Prior art keywords
development
task
continuous integration
content
integration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011138926.9A
Other languages
English (en)
Inventor
张育宏
张伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Sixun Software Co ltd
Original Assignee
Shenzhen Sixun Software Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Sixun Software Co ltd filed Critical Shenzhen Sixun Software Co ltd
Priority to CN202011138926.9A priority Critical patent/CN112148269A/zh
Publication of CN112148269A publication Critical patent/CN112148269A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/24Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及研发持续集成方法、装置、计算机设备及存储介质,该方法包括获取持续集成任务;根据持续集成任务进行脚本编辑,拉取脚本内的相关源码,并将相关源码发布至开发集成环境进行开发,以得到开发内容;对开发内容进行提取服务镜像,并部署至测试环境内进行测试,以得到测试结果;当测试结果为合格时,将开发内容进行生产部署;收集并分析生产部署后的运营数据,并存储至数据库内。本发明在开发过程采用kubernetes与docker来解决跨语言,多服务自动化管理,实现一键发布,整个集成过程实现提升软件研发效率。

Description

研发持续集成方法、装置、计算机设备及存储介质
技术领域
本发明涉及计算机,更具体地说是指研发持续集成方法、装置、计算机设备及存储介质。
背景技术
在进行平台研发或者是软件开发的过程中,需要多个部分协调一起完成,但是每个部分存在不同的专业和能力,容易到来沟通和协作方面的不流畅,且随着项目的复杂度增加,微服务技术架构这块问题更加突显。
目前在大部分公司内采用持续集成进行工作的集成,以减少集成引起的问题,并可以加快团队合作软件开发的速度,但是目前持续集成依旧存在因为所采用的工具的版本和配置等情况的不同,导致集成难度大等问题,进而导致软件研发效率低。
因此,有必要设计一种新的方法,实现提升软件研发效率。
发明内容
本发明的目的在于克服现有技术的缺陷,提供研发持续集成方法、装置、计算机设备及存储介质。
为实现上述目的,本发明采用以下技术方案:研发持续集成方法,包括:
获取持续集成任务;
根据所述持续集成任务进行脚本编辑,拉取脚本内的相关源码,并将相关源码发布至开发集成环境进行开发,以得到开发内容;
对所述开发内容进行提取服务镜像,并部署至测试环境内进行测试,以得到测试结果;
当测试结果为合格时,将开发内容进行生产部署;
收集并分析生产部署后的运营数据,并存储至数据库内。
其进一步技术方案为:所述获取持续集成任务,包括:
获取任务的类别,并创建发布的版本号以及对应的发布内容,以得到持续集成任务。
其进一步技术方案为:所述根据所述持续集成任务进行脚本编辑,拉取脚本内的相关源码,并将相关源码发布至开发集成环境进行开发,以得到开发内容,包括:
根据所述持续集成任务设置交付环境;
配置源码管理工具;
识别所述持续集成任务对应的开发语言;
对所述根据所述持续集成任务进行源码编译,以拉取脚本内的相关源码;
生产应用镜像;
编排容器,以得到开发集成环境,并将相关源码发布至开发集成环境进行开发,以得到开发内容。
其进一步技术方案为:所述对所述开发内容进行提取服务镜像,并部署至测试环境内进行测试,以得到测试结果,包括:
利用审核机制对所述开发内容进行审核,并对所述开发内容提取服务镜像,将服务镜像部署至测试环境内进行测试,以得到测试结果。
其进一步技术方案为:所述当测试结果为合格时,将开发内容进行生产部署,包括:
当测试结果为合格时,提取发布模板,并将开发内容依据发布模板进行生产部署。
其进一步技术方案为:所述发布模板包括测试编排模板、预生产编排模板以及生产编排模板。
本发明还提供了研发持续集成装置,包括:
任务获取单元,用于获取持续集成任务;
开发单元,用于根据所述持续集成任务进行脚本编辑,拉取脚本内的相关源码,并将相关源码发布至开发集成环境进行开发,以得到开发内容;
测试单元,用于对所述开发内容进行提取服务镜像,并部署至测试环境内进行测试,以得到测试结果;
生产部署单元,用于当测试结果为合格时,将开发内容进行生产部署;
运营处理单元,用于收集并分析生产部署后的运营数据,并存储至数据库内。
其进一步技术方案为:所述任务获取单元,用于获取任务的类别,并创建发布的版本号以及对应的发布内容,以得到持续集成任务。
本发明还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
本发明还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述的方法。
本发明与现有技术相比的有益效果是:本发明通过获取持续集成任务,根据该任务进行开发,再对开发的内容进行测试,测试合格后在进行生产部署,针对生产部署后的运营,则实时收集对应的运营数据进行分析保存,在开发过程采用kubernetes与docker来解决跨语言,多服务自动化管理,实现一键发布,整个集成过程实现提升软件研发效率。
下面结合附图和具体实施例对本发明作进一步描述。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的研发持续集成方法的应用场景示意图;
图2为本发明实施例提供的研发持续集成方法的流程示意图;
图3为本发明实施例提供的研发持续集成方法的子流程示意图;
图4为本发明实施例提供的研发持续集成装置的示意性框图;
图5为本发明实施例提供的研发持续集成装置的开发单元的示意性框图;
图6为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1和图2,图1为本发明实施例提供的研发持续集成方法的应用场景示意图。图2为本发明实施例提供的研发持续集成方法的示意性流程图。该研发持续集成方法应用于服务器中。该服务器与终端进行数据交互,将服务器集成的内容展示在终端上供用户使用。
图2是本发明实施例提供的研发持续集成方法的流程示意图。如图2所示,该方法包括以下步骤S110至S150。
S110、获取持续集成任务。
在本实施例中,持续集成任务是指产品集成的任务,一般包括产品的种类、任务需求、版本号以及发布内容等,其中,发布内容是指该产品需要在终端上呈现的内容。
具体地,获取任务的类别,并创建发布的版本号以及对应的发布内容,以得到持续集成任务。
进行持续集成时,选择任务分类,完成任务录入;确认任务,自动创建发布版本号,此版本号对应发布内容,变更依据,源码版本创建,灰度发布,任务变更等。
具体地,从预设的任务模板和任务分类后进行确认任务,便可而进入建立版本号的流程。
S120、根据所述持续集成任务进行脚本编辑,拉取脚本内的相关源码,并将相关源码发布至开发集成环境进行开发,以得到开发内容。
在本实施例中,开发内容是指研发出来的产品内容,一般是软件包。在开发过程中,一般包括搭建整个产品的架构,再针对持续集成任务进行分解后,开发各自的单元,接着针对每个单元进行测试,最后进行集成自测和前端自测。
在一实施例中,请参阅图3,上述的步骤S120可包括步骤S121~S126。
S121、根据所述持续集成任务设置交付环境。
在本实施例中,交付环境是指微服务架构下的持续交付环境。
S122、配置源码管理工具。
在本实施例中,首先选择源码管理工具,在进行授权登录,以进行源码管理工具的配置。
S123、识别所述持续集成任务对应的开发语言。
在本实施例中,首先根据获取持续集成任务的项目列表,在进行识别开发语言的特征值,由此确定开发语言。
S124、对所述根据所述持续集成任务进行源码编译,以拉取脚本内的相关源码。
在本实施例中,使用jenkins编写shell、window批处理等等不同脚本,自动拉取git、svn相关源码。
具体地,先获取工具链,生成编译容器,再将编译容器发布到容器编译集群内,进行编译后,再从编译出来的内容中拉取源码,进行单服务器健康检查以及单服务单元测试,最后执行第三方测试工具的集成。
S125、生产应用镜像。
在本实施例中,复制源码对应的可执行文件,在根据这些文件生成应用镜像。
S126、编排容器,以得到开发集成环境,并将相关源码发布至开发集成环境进行开发,以得到开发内容。
具体地,获取集群发布模板,集成监控,进行微服务集成健康监测以及集群单元的测试,最后集成第三方测试工具,以便于进行内容的开发。
自动发布到开发集成环境,从而避免人为集成造成误差。采用kubernetes和docker实现开发人员只需要界面一键发布即可,微服务之间对接管理采用自建DNS与配置管理中心。通过规则自动接入服务,完成水平动态扩展,支持mongodb、mq、redis、sqlserver、mysql等等各种中间件与数据库动态接入。
S130、对所述开发内容进行提取服务镜像,并部署至测试环境内进行测试,以得到测试结果。
在本实施例中,测试结果是指开发内容是否能通过自动化、功能、性能以及安全等相关属性的测试。
在进行测试时,需要设置测试用例,以进行功能测试、自动化测试、性能测试以及安全测试。
具体地,利用审核机制对所述开发内容进行审核,并对所述开发内容提取服务镜像,将服务镜像部署至测试环境内进行测试,以得到测试结果。
审核机制包括发布测试环境的审核、发布预生产环境的审核以及发布生产环境的审核等。
完成开发后会进入测试流程,服务器会根据版本号提取开发自测通过的服务镜像,并将其部署到测试环境,避免运行环境问题造成对应的问题。测试环境构建完成会发钉钉消息通知相关测试人员。测试人员通过平台接口编译自动化测试脚本,性能,安全脚本对程序进行验证。也可以通过内网域名人工访问验证功能。
研发交付测试,因为部署环境产生的问题很少,第一次配置镜像会有一些环境的问题,后续主要针对BUG修复;测试不用关心开发的实现方式,写通用的自动化脚本和性能压测就可以完成想要的效果,提升研发效率。
S140、当测试结果为合格时,将开发内容进行生产部署。
在本实施例中,当测试结果为合格时,提取发布模板,并将开发内容依据发布模板进行生产部署。
生产部署包括金丝雀部署、灰度发布、蓝绿部署、平滑升级、集群容灾以及熔断限流,首先先依据实际需求发布部分内容至终端,当终端使用或者其余条件满足预设的要求时,则逐步发布其他内容,当然,也可依据实际需求发布全部内容。
具体地,所述发布模板包括测试编排模板、预生产编排模板以及生产编排模板。
在生产部署过程中,通过istio和预设的配置中心实现流量管理。从而实现灰度发布,金丝雀部署,容灾限流等。使用kubernetes与docker完成应用集群建设,使用配置中心来管理应用集群与中间件,数据库之间贯通。日志***groylog采用统一收集,分区管理,定期备份。
S150、收集并分析生产部署后的运营数据,并存储至数据库内。
在本实施例中,数据收集通过sixunmm.apk支持服务端动态扩展线下采集字段,提供基础的数据汇总报表工具,数据复杂分析提取数据仓库处理。可根据预设的通用运营工具:投票、拼团、秒杀等可以嵌入***中使用。
整个运营过程包括采集数据,分析形成数据报表,根据数据报表进行成本优化以及数据决策,还可用于布置一些运营活动。
面对产品需求及时响应与运营方案的快速迭代,整体交付过程中要保证各环节质量,同时把变更的上线风险降到最低,提供自动化解决方案。
运营人员不用等研发修改增加字段重新发布上线。就可以获取新信息,来验证运营决策,可提升对应的效率,产品的研发过程采用持续集成方式进行,可以提升整个研发效率,交付环境的设置可以使得产品经理提前在每个阶段介入版本完成情况及验收,同时通过线上***看到他关注的产品功能是否配置,通过过程研发记录与开发人员提交情况,可以提供人员考核数据。采用kubernetes与docker来解决跨语言,多服务自动化管理。后续改造升级增加自动化编译发布与自动化测试,项目交付管理的需求版本对应,包括运营数据动态扩展逐步形成持续集成解决方案。
另外,需要在服务器的后台配置以下相关内容:多环境信息、发布环境、源码管理工具账户密码、源码管理工具地址、源码管理工具配置、语言特征值配置、工具链关系、工具链镜像、容器集群资源隔离、有状态服务、容器资源。资源模板、审核环节的设置以及审核人权限设置等内容。
上述的研发持续集成方法,通过获取持续集成任务,根据该任务进行开发,再对开发的内容进行测试,测试合格后在进行生产部署,针对生产部署后的运营,则实时收集对应的运营数据进行分析保存,在开发过程采用kubernetes与docker来解决跨语言,多服务自动化管理,实现一键发布,整个集成过程实现提升软件研发效率。
图4是本发明实施例提供的一种研发持续集成装置300的示意性框图。如图4所示,对应于以上研发持续集成方法,本发明还提供一种研发持续集成装置300。该研发持续集成装置300包括用于执行上述研发持续集成方法的单元,该装置可以被配置于服务器中。具体地,请参阅图4,该研发持续集成装置300包括任务获取单元301、开发单元302、测试单元303、生产部署单元304以及运营处理单元305。
任务获取单元301,用于获取持续集成任务;开发单元302,用于根据所述持续集成任务进行脚本编辑,拉取脚本内的相关源码,并将相关源码发布至开发集成环境进行开发,以得到开发内容;测试单元303,用于对所述开发内容进行提取服务镜像,并部署至测试环境内进行测试,以得到测试结果;生产部署单元304,用于当测试结果为合格时,将开发内容进行生产部署;运营处理单元305,用于收集并分析生产部署后的运营数据,并存储至数据库内。
在一实施例中,所述任务获取单元301,用于获取任务的类别,并创建发布的版本号以及对应的发布内容,以得到持续集成任务。
在一实施例中,如图5所示,所述开发单元302包括交付环境设置子单元3021、工具配置子单元3022、语言识别子单元3023、编译子单元3024、镜像生产子单元3025以及容器编排子单元3026。
交付环境设置子单元3021,用于根据所述持续集成任务设置交付环境;工具配置子单元3022,用于配置源码管理工具;语言识别子单元3023,用于识别所述持续集成任务对应的开发语言;编译子单元3024,用于对所述根据所述持续集成任务进行源码编译,以拉取脚本内的相关源码;镜像生产子单元3025,用于生产应用镜像;容器编排子单元3026,用于编排容器,以得到开发集成环境,并将相关源码发布至开发集成环境进行开发,以得到开发内容。
在一实施例中,所述测试单元303,用于利用审核机制对所述开发内容进行审核,并对所述开发内容提取服务镜像,将服务镜像部署至测试环境内进行测试,以得到测试结果。
在一实施例中,所述生产部署单元304,用于当测试结果为合格时,提取发布模板,并将开发内容依据发布模板进行生产部署。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述研发持续集成装置300和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述研发持续集成装置300可以实现为一种计算机程序的形式,该计算机程序可以在如图6所示的计算机设备上运行。
请参阅图6,图6是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是服务器,其中,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图6,该计算机设备500包括通过***总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作***5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种研发持续集成方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种研发持续集成方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:
获取持续集成任务;根据所述持续集成任务进行脚本编辑,拉取脚本内的相关源码,并将相关源码发布至开发集成环境进行开发,以得到开发内容;对所述开发内容进行提取服务镜像,并部署至测试环境内进行测试,以得到测试结果;当测试结果为合格时,将开发内容进行生产部署;收集并分析生产部署后的运营数据,并存储至数据库内。
在一实施例中,处理器502在实现所述获取持续集成任务步骤时,具体实现如下步骤:
获取任务的类别,并创建发布的版本号以及对应的发布内容,以得到持续集成任务。
在一实施例中,处理器502在实现所述根据所述持续集成任务进行脚本编辑,拉取脚本内的相关源码,并将相关源码发布至开发集成环境进行开发,以得到开发内容步骤时,具体实现如下步骤:
根据所述持续集成任务设置交付环境;配置源码管理工具;识别所述持续集成任务对应的开发语言;对所述根据所述持续集成任务进行源码编译,以拉取脚本内的相关源码;生产应用镜像;编排容器,以得到开发集成环境,并将相关源码发布至开发集成环境进行开发,以得到开发内容。
在一实施例中,处理器502在实现所述对所述开发内容进行提取服务镜像,并部署至测试环境内进行测试,以得到测试结果步骤时,具体实现如下步骤:
利用审核机制对所述开发内容进行审核,并对所述开发内容提取服务镜像,将服务镜像部署至测试环境内进行测试,以得到测试结果。
在一实施例中,处理器502在实现所述当测试结果为合格时,将开发内容进行生产部署步骤时,具体实现如下步骤:
当测试结果为合格时,提取发布模板,并将开发内容依据发布模板进行生产部署。
其中,所述发布模板包括测试编排模板、预生产编排模板以及生产编排模板。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机***中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中该计算机程序被处理器执行时使处理器执行如下步骤:
获取持续集成任务;根据所述持续集成任务进行脚本编辑,拉取脚本内的相关源码,并将相关源码发布至开发集成环境进行开发,以得到开发内容;对所述开发内容进行提取服务镜像,并部署至测试环境内进行测试,以得到测试结果;当测试结果为合格时,将开发内容进行生产部署;收集并分析生产部署后的运营数据,并存储至数据库内。
在一实施例中,所述处理器在执行所述计算机程序而实现所述获取持续集成任务步骤时,具体实现如下步骤:
获取任务的类别,并创建发布的版本号以及对应的发布内容,以得到持续集成任务。
在一实施例中,所述处理器在执行所述计算机程序而实现所述根据所述持续集成任务进行脚本编辑,拉取脚本内的相关源码,并将相关源码发布至开发集成环境进行开发,以得到开发内容步骤时,具体实现如下步骤:
根据所述持续集成任务设置交付环境;配置源码管理工具;识别所述持续集成任务对应的开发语言;对所述根据所述持续集成任务进行源码编译,以拉取脚本内的相关源码;生产应用镜像;编排容器,以得到开发集成环境,并将相关源码发布至开发集成环境进行开发,以得到开发内容。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对所述开发内容进行提取服务镜像,并部署至测试环境内进行测试,以得到测试结果步骤时,具体实现如下步骤:
利用审核机制对所述开发内容进行审核,并对所述开发内容提取服务镜像,将服务镜像部署至测试环境内进行测试,以得到测试结果。
在一实施例中,所述处理器在执行所述计算机程序而实现所述当测试结果为合格时,将开发内容进行生产部署步骤时,具体实现如下步骤:
当测试结果为合格时,提取发布模板,并将开发内容依据发布模板进行生产部署。
其中,所述发布模板包括测试编排模板、预生产编排模板以及生产编排模板。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.研发持续集成方法,其特征在于,包括:
获取持续集成任务;
根据所述持续集成任务进行脚本编辑,拉取脚本内的相关源码,并将相关源码发布至开发集成环境进行开发,以得到开发内容;
对所述开发内容进行提取服务镜像,并部署至测试环境内进行测试,以得到测试结果;
当测试结果为合格时,将开发内容进行生产部署;
收集并分析生产部署后的运营数据,并存储至数据库内。
2.根据权利要求1所述的研发持续集成方法,其特征在于,所述获取持续集成任务,包括:
获取任务的类别,并创建发布的版本号以及对应的发布内容,以得到持续集成任务。
3.根据权利要求1所述的研发持续集成方法,其特征在于,所述根据所述持续集成任务进行脚本编辑,拉取脚本内的相关源码,并将相关源码发布至开发集成环境进行开发,以得到开发内容,包括:
根据所述持续集成任务设置交付环境;
配置源码管理工具;
识别所述持续集成任务对应的开发语言;
对所述根据所述持续集成任务进行源码编译,以拉取脚本内的相关源码;
生产应用镜像;
编排容器,以得到开发集成环境,并将相关源码发布至开发集成环境进行开发,以得到开发内容。
4.根据权利要求1所述的研发持续集成方法,其特征在于,所述对所述开发内容进行提取服务镜像,并部署至测试环境内进行测试,以得到测试结果,包括:
利用审核机制对所述开发内容进行审核,并对所述开发内容提取服务镜像,将服务镜像部署至测试环境内进行测试,以得到测试结果。
5.根据权利要求1所述的研发持续集成方法,其特征在于,所述当测试结果为合格时,将开发内容进行生产部署,包括:
当测试结果为合格时,提取发布模板,并将开发内容依据发布模板进行生产部署。
6.根据权利要求5所述的研发持续集成方法,其特征在于,所述发布模板包括测试编排模板、预生产编排模板以及生产编排模板。
7.研发持续集成装置,其特征在于,包括:
任务获取单元,用于获取持续集成任务;
开发单元,用于根据所述持续集成任务进行脚本编辑,拉取脚本内的相关源码,并将相关源码发布至开发集成环境进行开发,以得到开发内容;
测试单元,用于对所述开发内容进行提取服务镜像,并部署至测试环境内进行测试,以得到测试结果;
生产部署单元,用于当测试结果为合格时,将开发内容进行生产部署;
运营处理单元,用于收集并分析生产部署后的运营数据,并存储至数据库内。
8.根据权利要求7所述的研发持续集成装置,其特征在于,所述任务获取单元,用于获取任务的类别,并创建发布的版本号以及对应的发布内容,以得到持续集成任务。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至6中任一项所述的方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如权利要求1至6中任一项所述的方法。
CN202011138926.9A 2020-10-22 2020-10-22 研发持续集成方法、装置、计算机设备及存储介质 Pending CN112148269A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011138926.9A CN112148269A (zh) 2020-10-22 2020-10-22 研发持续集成方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011138926.9A CN112148269A (zh) 2020-10-22 2020-10-22 研发持续集成方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN112148269A true CN112148269A (zh) 2020-12-29

Family

ID=73954541

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011138926.9A Pending CN112148269A (zh) 2020-10-22 2020-10-22 研发持续集成方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN112148269A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112699041A (zh) * 2021-01-04 2021-04-23 中车青岛四方车辆研究所有限公司 一种嵌入式软件自动部署方法、***及设备
CN112732561A (zh) * 2020-12-31 2021-04-30 武汉悦学帮网络技术有限公司 一种项目部署方法、装置、计算机设备和存储介质
CN112788029A (zh) * 2021-01-11 2021-05-11 河北志晟信息技术股份有限公司 一种计算机程序产品发布方法及***
CN113094081A (zh) * 2021-04-06 2021-07-09 中国工商银行股份有限公司 软件发布方法、装置、计算机***和计算机可读存储介质
CN115034095A (zh) * 2022-08-10 2022-09-09 国网江苏省电力有限公司信息通信分公司 一种敏态研发仿真***
CN115469882A (zh) * 2022-09-16 2022-12-13 上海百胜软件股份有限公司 软件项目管理方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108052333A (zh) * 2017-12-11 2018-05-18 北京紫优能源科技有限公司 一种电力调度集控***标准化自动化部署方法及架构
CN109614108A (zh) * 2018-10-31 2019-04-12 武汉艺果互动科技股份有限公司 一种基于Docker的项目自动化部署方法、设备及存储设备
CN109947452A (zh) * 2019-03-26 2019-06-28 南京联创信息科技有限公司 一种Kubernetes容器平台应用更新方法
CN111190690A (zh) * 2019-12-25 2020-05-22 中科曙光国际信息产业有限公司 基于容器编排工具的智能训练装置
CN111198814A (zh) * 2019-12-23 2020-05-26 曙光信息产业(北京)有限公司 一种持续集成持续交付的验收***
US10691436B1 (en) * 2018-06-28 2020-06-23 Atlassian Pty Ltd Systems and methods for tracking source code deployments

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108052333A (zh) * 2017-12-11 2018-05-18 北京紫优能源科技有限公司 一种电力调度集控***标准化自动化部署方法及架构
US10691436B1 (en) * 2018-06-28 2020-06-23 Atlassian Pty Ltd Systems and methods for tracking source code deployments
CN109614108A (zh) * 2018-10-31 2019-04-12 武汉艺果互动科技股份有限公司 一种基于Docker的项目自动化部署方法、设备及存储设备
CN109947452A (zh) * 2019-03-26 2019-06-28 南京联创信息科技有限公司 一种Kubernetes容器平台应用更新方法
CN111198814A (zh) * 2019-12-23 2020-05-26 曙光信息产业(北京)有限公司 一种持续集成持续交付的验收***
CN111190690A (zh) * 2019-12-25 2020-05-22 中科曙光国际信息产业有限公司 基于容器编排工具的智能训练装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
孟磊: "《软件质量与测试》", 31 March 2015, 西安电子科技大学出版社 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112732561A (zh) * 2020-12-31 2021-04-30 武汉悦学帮网络技术有限公司 一种项目部署方法、装置、计算机设备和存储介质
CN112699041A (zh) * 2021-01-04 2021-04-23 中车青岛四方车辆研究所有限公司 一种嵌入式软件自动部署方法、***及设备
CN112699041B (zh) * 2021-01-04 2024-03-26 中车青岛四方车辆研究所有限公司 一种嵌入式软件自动部署方法、***及设备
CN112788029A (zh) * 2021-01-11 2021-05-11 河北志晟信息技术股份有限公司 一种计算机程序产品发布方法及***
CN113094081A (zh) * 2021-04-06 2021-07-09 中国工商银行股份有限公司 软件发布方法、装置、计算机***和计算机可读存储介质
CN113094081B (zh) * 2021-04-06 2024-03-01 中国工商银行股份有限公司 软件发布方法、装置、计算机***和计算机可读存储介质
CN115034095A (zh) * 2022-08-10 2022-09-09 国网江苏省电力有限公司信息通信分公司 一种敏态研发仿真***
CN115034095B (zh) * 2022-08-10 2022-11-04 国网江苏省电力有限公司信息通信分公司 一种敏态研发仿真***
CN115469882A (zh) * 2022-09-16 2022-12-13 上海百胜软件股份有限公司 软件项目管理方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN112148269A (zh) 研发持续集成方法、装置、计算机设备及存储介质
US9477581B2 (en) Integrated system and method for validating the functionality and performance of software applications
US8074204B2 (en) Test automation for business applications
US20210311858A1 (en) System and method for providing a test manager for use with a mainframe rehosting platform
JP4961123B2 (ja) 自動化されたテストケース実行に関して疎結合された自動化されたテストケース検証
EP2245551B1 (en) Identification of elements of currently-executing component script
EP2228726B1 (en) A method and system for task modeling of mobile phone applications
US20080086627A1 (en) Methods and apparatus to analyze computer software
CA3131079A1 (en) Test case generation method and device, computer equipment and storage medium
JP2010231782A (ja) 機能自動化のための方法およびシステム
CN109656820B (zh) 基于cbtc的智能自动化测试***
US11074162B2 (en) System and a method for automated script generation for application testing
EP1179776A1 (en) Test automation framework
CN111736865B (zh) 一种数据库升级方法及***
CN112131116B (zh) 一种嵌入式软件自动化回归测试方法
US8024706B1 (en) Techniques for embedding testing or debugging features within a service
CN104820610B (zh) 一种云环境中虚拟机镜像的更新方法及***
CN112148614A (zh) 回归测试方法及装置
CN103026337A (zh) 配给组件的提取和重构
CN107480050A (zh) 一种自动测试更新包的测试方法
CN114297961A (zh) 一种芯片测试用例处理方法及相关装置
JP7215501B2 (ja) 依存関係検出装置および依存関係検出方法
CN117632146A (zh) 一种基于微服务敏捷部署的边云协同部署重构方法
CN116737232A (zh) 一种基于国产软硬件环境的软件自动迁移和优化方法
WO2021131435A1 (ja) プログラム開発支援システム及びプログラム開発支援方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20201229