一种ABAP开发环境下的应用开发管理系统技术方案

技术编号:35867895 阅读:23 留言:0更新日期:2022-12-07 11:01
本发明专利技术提供了一种ABAP开发环境下的应用开发管理系统,包括:开发模块:用于通过基于Git的变更传输系统搭建GITHUB云储存库,通过Jenkins管道在GITHUB云储存库中调用应用构建框架代码和功能脚本代码,生成待开发应用的插件集;集成模块:用于通过插件集,对待开发应用进行持续集成;测试模块:用于对应用集成后的待开发应用进行单元测试,确定单元测试结果;生产模块:用于在单元测试结果成功后,生成实例化应用软件进行交付。本发明专利技术针对目前ABAP开发环境和主流持续集成和持续交付工具不能很好的集成的问题进行分析,结合Jenkin进行应用开发管理。开发管理。开发管理。

【技术实现步骤摘要】
一种ABAP开发环境下的应用开发管理系统


[0001]本专利技术涉及软件开发
,特别涉及一种ABAP开发环境下的应用开发管理系统。

技术介绍

[0002]目前,随着软件技术的发展,软件产品交付的周期越来越短,为了保证产品交付的周期和质量,自动化测试,集成,部署和交付显得越来越重要。Jenkins作为最主流的持续集成和持续交付的工具,可以支持多种语言(如Java,python等)的集成,然而,由于ABAP语言开发环境和技术架构的限制,目前ABAP还不能很好的和Jenkins集成,实现持续集成和持续交付整个全流程的自动化。

技术实现思路

[0003]本专利技术提供一种ABAP开发环境下的应用开发管理系统,用以解决目前ABAP还不能很好的和Jenkins集成,实现持续集成和持续交付整个全流程的自动化的情况。
[0004]在本专利技术的实施例中包括一种ABAP开发环境下的应用开发管理系统,包括:
[0005]开发模块:用于通过基于Git的变更传输系统搭建GITHUB云储存库,通过Jenkins管道在GITHUB云储存库中调用应用构建框架代码和功能脚本代码,生成待开发应用的插件集;
[0006]集成模块:用于通过插件集,对待开发应用进行持续集成;
[0007]测试模块:用于对应用集成后的待开发应用进行单元测试,确定单元测试结果;
[0008]生产模块:用于在单元测试结果成功后,生成实例化应用软件进行交付。
[0009]在一种可选的实施例中:所述基于Git的变更传输系统搭建GITHUB云储存库包括:
[0010]中央管理单元:用于通过中央版本管理作为云存储库;其中,
[0011]云存储库中设置有Jenkins管道,Jenkins管道再云存储库中下载请求代码;其中,
[0012]请求代码包括:应用代码、插件代码和脚本代码;
[0013]Jenkins管道符合Jenkinsfile定义,Jenkinsfile定义用于确定管道步骤的执行顺序和错误应对方式;
[0014]共享单元:用于在云存储库中设置共享远程存储库,每个待开发应用对应一个唯一的共享远程存储库;其中,
[0015]共享远程存储库中的共享对象可以在传输至不同的的开发系统和测试系统中进行测试开发;
[0016]克隆单元:用于将共享远程存储库克隆到ABAP开发系统中;
[0017]推送单元:用于将ABAP开发系统中的待开发应用推送到共享远程存储库中。
[0018]在一种可选的实施例中:所述应用构建框架代码为通用框架代码;其中,
[0019]通用框架代码通过OData服务调用ABAP后端的开发步骤;
[0020]每个开发步骤的运行方式和脚本预先进行定义;
[0021]通用框架代码还用于自动执行构建脚本,并返回执行结果;
[0022]构建脚本得脚本代码由插件隐式提供。
[0023]在一种可选的实施例中:所述功能脚本代码通过分支系统进行配置;其中,
[0024]每个分支系统包括源代码和源代码对应的构建脚本;
[0025]构建脚本与开发包链接,每个开发包有其独立的构建脚本;其中,
[0026]当开发包没有构建脚本时,通过其父类软件包继承构建脚本。
[0027]在一种可选的实施例中:所述构建脚本包括以下步骤:
[0028]步骤1:定义构建阶段的脚本名称,并添加构建阶段需要执行的构建插件;
[0029]步骤2:设置构建插件的执行参数,并在同一个构建阶段使用多个构建配置。
[0030]在一种可选的实施例中:所述开发模块还包括:
[0031]构建脚本编辑器,通过脚本编辑器对构建脚本进行创建、编辑、删除、上传和下载。
[0032]在一种可选的实施例中:所述插件集还包括:
[0033]对插件集进行预定义;其中,
[0034]预定义包括功能定义和执行定义;
[0035]插件集对应框架接口的ABAP类集;其中,
[0036]框架接口用于进行插件开发和插件扩充。
[0037]在一种可选的实施例中:所述集成模块的持续集成包括:传输请求的持续集成、原有集成系统的持续集成和定期的代码持续交付;其中,
[0038]传输请求的持续集成用于在软件开发成员提交了新的功能或者修复了新的bug时,自动触发对应的Jenkins管道作业,并将管道作业的结果反馈至软件开发成员,确定新的功能或者修复了新的bug时,代码独立运行是否正常和集成运行时有没有迭代问题;
[0039]原有集成系统的持续集成用于在开发成员释放一个传输请求之前,触发一个持续集成测试,持续集成测试对传输中的ABAP对像通过基于Git的变更传输系统转换成平面文件,推送到远程共享代码库中,代码库中新的变更会引起Jenkins管道作业的运行,执行ABAP单元测试,语法检查,安全检查;其中,
[0040]当原有集成系统的持续集成成功时,传输请求会被释放,传输对象会被引入到各个下游系统中;
[0041]当原有集成系统的持续集成失败时,错误的结果会发送给对应的开发成员,传输请求不会被释放,开发可以继续在未被释放的传输请求上继续代码的修正和开发;
[0042]定期的代码持续交付用于传输请求触发持续集成CI管道作业,在管道作业构建成功后,开发分支的代码会被合并到远程共享代码库的测试分支,并部署到ABAP后端对应的测试系统。
[0043]在一种可选的实施例中:所述单元测试包括:
[0044]响应于针对待开发应用的第一测试操作,在所述客户端的展示界面中展示所述待开发应用的应用界面;
[0045]响应于针对应用界面的第二操作,生成针对待开发应用的操作命令,并且将操作命令经由第一服务器端传输至第二服务器端,以控制与第二服务器端相连的待开发软件进行应用测试,并得到更新应用界面,更新应用界面是第二服务器端响应于从第一服务器端下载到针对待开发应用的应用界面的操作命令,控制与第二服务器端相连的至少一个待开
发应用按照预设频率进行指定个数次截图得到的图像;
[0046]其中,
[0047]第一服务器端用于发送测试待开发应用的数据请求,并基于待开发应用生成测试信息集合;
[0048]第一测试操作,包括下载待开发应用的应用界面;
[0049]在客户端的展示界面中展示待开发应用的应用界面;其中,
[0050]应用界面通过如下方式获得:
[0051]向第一服务器端发送图像下载请求,图像下载请求包括资源路径,资源路径包括第一服务器端IP地址、存储路径和待开发软件唯一识别码;
[0052]获得来自第一服务器端的与资源路径对应的应用界面,应用界面与待开发应用通过截图得到的图像;
[0053]渲染应用界面,并且在客户端的展示界面展示经渲染的应用界面,以便基于针对所述经渲染的应用界面的操作进行应用测试。
[0054]在一种可本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种ABAP开发环境下的应用开发管理系统,其特征在于,包括:开发模块:用于通过基于Git的变更传输系统搭建GITHUB云储存库,通过Jenkins管道在GITHUB云储存库中调用应用构建框架代码和功能脚本代码,生成待开发应用的插件集;集成模块:用于通过插件集,对待开发应用进行持续集成;测试模块:用于对应用集成后的待开发应用进行单元测试,确定单元测试结果;生产模块:用于在单元测试结果成功后,生成实例化应用软件进行交付。2.如权利要求1所述的一种ABAP开发环境下的应用开发管理系统,其特征在于,所述基于Git的变更传输系统搭建GITHUB云储存库包括:中央管理单元:用于通过中央版本管理作为云存储库;其中,云存储库中设置有Jenkins管道,Jenkins管道再云存储库中下载请求代码;其中,请求代码包括:应用代码、插件代码和脚本代码;Jenkins管道符合Jenkinsfile定义,Jenkinsfile定义用于确定管道步骤的执行顺序和错误应对方式;共享单元:用于在云存储库中设置共享远程存储库,每个待开发应用对应一个唯一的共享远程存储库;其中,共享远程存储库中的共享对象可以在传输至不同的的开发系统和测试系统中进行测试开发;克隆单元:用于将共享远程存储库克隆到ABAP开发系统中;推送单元:用于将ABAP开发系统中的待开发应用推送到共享远程存储库中。3.如权利要求1所述的一种ABAP开发环境下的应用开发管理系统,其特征在于,所述应用构建框架代码为通用框架代码;其中,通用框架代码通过OData服务调用ABAP后端的开发步骤;每个开发步骤的运行方式和脚本预先进行定义;通用框架代码还用于自动执行构建脚本,并返回执行结果;构建脚本得脚本代码由插件隐式提供。4.如权利要求1所述的一种ABAP开发环境下的应用开发管理系统,其特征在于,所述功能脚本代码通过分支系统进行配置;其中,每个分支系统包括源代码和源代码对应的构建脚本;构建脚本与开发包链接,每个开发包有其独立的构建脚本;其中,当开发包没有构建脚本时,通过其父类软件包继承构建脚本。5.如权利要求1所述的一种ABAP开发环境下的应用开发管理系统,其特征在于,所述构建脚本包括以下步骤:步骤1:定义构建阶段的脚本名称,并添加构建阶段需要执行的构建插件;步骤2:设置构建插件的执行参数,并在同一个构建阶段使用多个构建配置。6.如权利要求1所述的一种ABAP开发环境下的应用开发管理系统,其特征在于,所述开发模块还包括:构建脚本编辑器,通过脚本编辑器对构建脚本进行创建、编辑、删除、上传和下载。7.如权利要求1所述的一种ABAP开发环境下的应用开发管理系统,其特征在于,所述插件集还包括:
对插件集进行预定义;其中,预定义包括功能定义和执行定义;插件集对应框架接口的ABAP类集;其中,框架接口用于进行插件开发和插件扩充。8.如权利要求1所述的一种ABAP开发环境下的应用开发管理系统,其特征在于,所述集成模块的持续集成包括:传输请求的持续集成、原有集成系统的持续集成和定期的代码持续交付;其中,传输请求的持续集成用于在软件开发成员提交了新的功能或者修复了新的bug时,自动触发对应的Jenkins管道作业,并将管道作业的结果反馈至软件开发成员,确定新的功能或者修复了新的bug时,...

【专利技术属性】
技术研发人员:王飞王靖孟冬杨迪高泉申雅娟董绍艳陈常钰
申请(专利权)人:中国安全生产科学研究院
类型:发明
国别省市:

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

1