CN116225441B - 一种在线编码系统的代码托管方法及系统 - Google Patents

一种在线编码系统的代码托管方法及系统 Download PDF

Info

Publication number
CN116225441B
CN116225441B CN202211470883.3A CN202211470883A CN116225441B CN 116225441 B CN116225441 B CN 116225441B CN 202211470883 A CN202211470883 A CN 202211470883A CN 116225441 B CN116225441 B CN 116225441B
Authority
CN
China
Prior art keywords
coding
code
software
developed
compiling
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.)
Active
Application number
CN202211470883.3A
Other languages
English (en)
Other versions
CN116225441A (zh
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.)
Beijing Tongtech Co Ltd
Original Assignee
Beijing Tongtech 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 Beijing Tongtech Co Ltd filed Critical Beijing Tongtech Co Ltd
Priority to CN202211470883.3A priority Critical patent/CN116225441B/zh
Publication of CN116225441A publication Critical patent/CN116225441A/zh
Application granted granted Critical
Publication of CN116225441B publication Critical patent/CN116225441B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal 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)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种在线编码系统的代码托管方法及系统,其方法包括:获取服务器端上传的待开发软件的汇编代码,根据所述汇编代码创建目标编码项目并将其上传到在线编码系统中,获取待开发软件的目标编码方式并选择其相应的编码风格函数,利用所述编码风格函数对待开发软件的汇编代码进行托管编译,根据编译结果生成应用软件。通过系统自动选择编码方式来对目标编码项目进行代码托管可以智能地根据源代码的代码特性和搭载系统的系统参数来选择出最适配的编码方式进行代码托管编译,提高了工作效率和稳定性以及编码软件与搭载系统的兼容性。

Description

一种在线编码系统的代码托管方法及系统
技术领域
本发明人工智能领域,尤其涉及一种在线编码系统的代码托管方法及系统。
背景技术
代码托管是在分布式版本控制的基础上,从一开始的项目构建、代码生产、编写、开发测试是在统一的平台进行,不用因为多方参与或者交付双方容器、设备等原因造成沟通不便。代码托管可以设置不同的权限,不同角色的参与者通过权限控制,没必要给所有参与者展示代码全貌。代码托管也可以最大程度的确保代码的可追溯和及时的持久化,而减少人为问题造成的损失。在现代软件项目中,代码托管和团队协作,是大多数软件系统研发过程中不可缺少的一环。现有的代码托管方式为从用户端获取待编译的源代码,通过用户选择的编码方式来进行托管编码从而生成应用程序,上述方法存在以下问题:每次在代码托管前需要进行手动的编码方式选择,在一些特定情况下会导致用户选择的编码方式所生成的软件与搭载系统不兼容从而浪费了成本,降低了工作效率。
发明内容
针对上述所显示出来的问题,本发明提供了一种在线编码系统的代码托管方法及系统用以解决背景技术中提到的每次在代码托管前需要进行手动的编码方式选择,在一些特定情况下会导致用户选择的编码方式所生成的软件与搭载系统不兼容从而浪费了成本,降低了工作效率的问题。
一种在线编码系统的代码托管方法,包括以下步骤:
获取服务器端上传的待开发软件的汇编代码;
根据所述汇编代码创建目标编码项目并将其上传到在线编码系统中;
获取待开发软件的目标编码方式并选择其相应的编码风格函数;
利用所述编码风格函数对待开发软件的汇编代码进行托管编译,根据编译结果生成应用软件。
优选的,所述获取服务器端上传的待开发软件的汇编代码,包括:
接收用户端发送的托管任务并对其进行解析,根据解析结果确定用户端是否具备代码托管条件;
若是,通过所述服务器端接收所述托管任务对应的待开发软件的配置信息并对其进行基础检查;
检查通过后根据所述配置信息从源代码数据库中调取待开发软件的源代码;
根据所述托管任务获取汇编指令,基于所述汇编指令根据所述待开发软件的源代码生成所述汇编代码。
优选的,所述根据所述汇编代码创建目标编码项目并将其上传到在线编码系统中,包括:
确定所述汇编代码的代码格式并根据其选择适配的代码存储框架;
将所述汇编代码导入到所述代码存储框架中,定义一个编码模板项目;
将所述代码存储框架部署到所述编码模板项目中获得所述目标编码项目,检测所述目标编码项目的基础运行参数是否合格,获取检测结果;
若所述检测结果为基础运行参数合格,将所述目标编码项目通过预设方式上传到所述在线编码系统上。
优选的,所述获取待开发软件的目标编码方式并选择其相应的编码风格函数,包括:
向所述服务器端发出获取待开发软件搭载系统的系统参数的请求;
响应服务器端反馈的目标系统参数,解析所述目标系统参数确定待开发软件的多个通用编码方式;
基于服务器端在所述多个通用编码方式中选择的期望编码方式作为所述目标编码方式;
获取所述目标编码方式的编码特性,基于所述编码特性在预设编码函数库中选择目标编码方式对应的编码风格函数。
优选的,所述利用所述编码风格函数对待开发软件的汇编代码进行托管编译,根据编译结果生成应用软件,包括:
对所述编码风格函数进行编译,获得托管编码函数;
对所述汇编代码进行统一预处理以生成所述托管编码函数对应的函数调用信息;
利用所述托管编码函数基于所述函数调用信息进行托管编译,获取待开发软件的运行信息编译文件;
根据所述运行信息编译文件生成所述应用软件。
优选的,所述利用所述托管编码函数基于所述函数调用信息进行托管编译,获取待开发软件的运行信息编译文件,包括:
利用所述托管编码函数基于所述函数调用信息进行托管编译,获取待开发软件的初级代码;
基于待开发软件的配置信息获取其对应的运行配置文件;
将所述运行配置文件和待开发软件的初级代码添加至编译器中进行二次编译,获取编译文件;
将所述编译文件确认为待开发软件的运行信息编译文件。
优选的,所述方法还包括:
获取应用软件所搭载目标平台的网络地址、磁盘参数和CPU参数;
根据所述网络地址、磁盘参数和CPU参数生成目标平台的运行码;
提取所述应用软件的注册信息,根据所述注册信息和目标平台的运行码生成应用软件在目标平台上的运行授权信息;
基于所述运行授权信息,对所述应用软件进行授权处理。
优选的,在检查通过后根据所述配置信息从源代码数据库中调取待开发软件的源代码之后,还包括:
对所述源代码进行预处理,获取预处理后的源代码;
获取所述预处理后的源代码的原始注释文件,利用第三方工具处理所述预处理后的源代码,获取源代码的当前注释文件;
对比所述原始注释文件和当前注释文件,根据对比结果确定源代码的损失程度,基于所述损失程度生成调取源代码的分析数据;
将所述分析数据上传到源代码数据库中以使其对损失源代码进行修复。
优选的,所述方法还包括:
获取应用软件的功能特性,基于所述功能特性生成对应的测试操作事件;
根据所述测试操作事件调用测试脚本模板文件,将所述测试操作事件输入到所述测试脚本模板文件中获得功能测试文件;
调用所述应用软件的相关驱动文件,在所述相关驱动文件上运行所述功能测试文件,获取运行结果;
根据所述运行结果确定应用程序的文件操作序列,对所述文件操作序列进行故障排查,根据排查结果确定应用程序的可靠性。
一种在线编码系统的代码托管系统,该系统包括:
获取模块,用于获取服务器端上传的待开发软件的汇编代码;
创建模块,用于根据所述汇编代码创建目标编码项目并将其上传到在线编码系统中;
选择模块,用于获取待开发软件的目标编码方式并选择其相应的编码风格函数;
编译模块,用于利用所述编码风格函数对待开发软件的汇编代码进行托管编译,根据编译结果生成应用软件。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
图1为本发明所提供的一种在线编码系统的代码托管方法的工作流程图;
图2为本发明所提供的一种在线编码系统的代码托管方法的另一工作流程图;
图3为本发明所提供的一种在线编码系统的代码托管方法的又一工作流程图;
图4为本发明所提供的一种在线编码系统的代码托管系统的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
代码托管是在分布式版本控制的基础上,从一开始的项目构建、代码生产、编写、开发测试是在统一的平台进行,不用因为多方参与或者交付双方容器、设备等原因造成沟通不便。代码托管可以设置不同的权限,不同角色的参与者通过权限控制,没必要给所有参与者展示代码全貌。代码托管也可以最大程度的确保代码的可追溯和及时的持久化,而减少人为问题造成的损失。在现代软件项目中,代码托管和团队协作,是大多数软件系统研发过程中不可缺少的一环。现有的代码托管方式为从用户端获取待编译的源代码,通过用户选择的编码方式来进行托管编码从而生成应用程序,上述方法存在以下问题:每次在代码托管前需要进行手动的编码方式选择,在一些特定情况下会导致用户选择的编码方式所生成的软件与搭载系统不兼容从而浪费了成本,降低了工作效率。为了解决上述问题,本实施例公开了一种在线编码系统的代码托管方法。
一种在线编码系统的代码托管方法,如图1所示,包括以下步骤:
步骤S101、获取服务器端上传的待开发软件的汇编代码;
步骤S102、根据所述汇编代码创建目标编码项目并将其上传到在线编码系统中;
步骤S103、获取待开发软件的目标编码方式并选择其相应的编码风格函数;
步骤S104、利用所述编码风格函数对待开发软件的汇编代码进行托管编译,根据编译结果生成应用软件。
在本实施例中,汇编代码表示为待开发软件的汇编语言格式的代码;
在本实施例中,目标编码项目表示为针对待开发软件设计的软件编码项目;
在本实施例中,目标编码方式表示为对待开发软件的代码文件格式转换的方式;
在本实施例中,编码风格函数表示为待开发软件的编码风格所对应的编码函数;
在本实施例中,应用软件表示为可以搭载到计算机系统上运行的app软件。
上述技术方案的工作原理为:获取服务器端上传的待开发软件的汇编代码,根据所述汇编代码创建目标编码项目并将其上传到在线编码系统中,获取待开发软件的目标编码方式并选择其相应的编码风格函数,利用所述编码风格函数对待开发软件的汇编代码进行托管编译,根据编译结果生成应用软件。
上述技术方案的有益效果为:通过系统自动选择编码方式来对目标编码项目进行代码托管可以智能地根据源代码的代码特性和搭载系统的系统参数来选择出最适配的编码方式进行代码托管编译,提高了工作效率和稳定性以及编码软件与搭载系统的兼容性,解决了现有技术中每次在代码托管前需要进行手动的编码方式选择,在一些特定情况下会导致用户选择的编码方式所生成的软件与搭载系统不兼容从而浪费了成本,降低了工作效率的问题。
在一个实施例中,如图2所示,所述获取服务器端上传的待开发软件的汇编代码,包括:
步骤S201、接收用户端发送的托管任务并对其进行解析,根据解析结果确定用户端是否具备代码托管条件;
步骤S202、若是,通过所述服务器端接收所述托管任务对应的待开发软件的配置信息并对其进行基础检查;
步骤S203、检查通过后根据所述配置信息从源代码数据库中调取待开发软件的源代码;
步骤S204、根据所述托管任务获取汇编指令,基于所述汇编指令根据所述待开发软件的源代码生成所述汇编代码。
在本实施例中,托管任务表示为代码托管编译任务;
在本实施例中,代码托管条件可以为确定用户端的使用人员的身份条件是否为软件开发人员;
在本实施例中,基础检查表示为对配置信息进行基础的参数检查;
在本实施例中,汇编指令表示为对目源代码的汇编方式和汇编条件。
上述技术方案的有益效果为:通过判断用户端是否具备代码托管条件可以直观地确定客户端是否具备最基础的托管条件,提高了排查准确率和效率,避免了后续无用流程的进行,提高了工作效率,进一步地,通过由源代码生成汇编代码可以扩大其编译局限性,为后续托管编译工作奠定了基础,提高了代码托管效率。
在一个实施例中,所述根据所述汇编代码创建目标编码项目并将其上传到在线编码系统中,包括:
确定所述汇编代码的代码格式并根据其选择适配的代码存储框架;
将所述汇编代码导入到所述代码存储框架中,定义一个编码模板项目;
将所述代码存储框架部署到所述编码模板项目中获得所述目标编码项目,检测所述目标编码项目的基础运行参数是否合格,获取检测结果;
若所述检测结果为基础运行参数合格,将所述目标编码项目通过预设方式上传到所述在线编码系统上。
在本实施例中,代码存储框架表示为对汇编代码的分级存储框架。
上述技术方案的有益效果为:通过选择适配的代码存储框架可以保证汇编代码的完整存储,避免数据丢失情况的发生,进一步地提高了稳定性,进一步地,通过对目标编码项目进行合格检查可以保证后续在代码托管平台的运行稳定性,进一步地提高了工作效率。
在一个实施例中,如图3所示,所述获取待开发软件的目标编码方式并选择其相应的编码风格函数,包括:
步骤S301、向所述服务器端发出获取待开发软件搭载系统的系统参数的请求;
步骤S302、响应服务器端反馈的目标系统参数,解析所述目标系统参数确定待开发软件的多个通用编码方式;
步骤S303、基于服务器端在所述多个通用编码方式中选择的期望编码方式作为所述目标编码方式;
步骤S304、获取所述目标编码方式的编码特性,基于所述编码特性在预设编码函数库中选择目标编码方式对应的编码风格函数。
在本实施例中,通用编码方式表示为可以同时适配目标系统参数和任何开发代码的编码方式。
上述技术方案的有益效果为:通过根据搭载系统的系统参数选择出多个通用编码方式来供服务器端进行选择可以根据其自身需求来选择期望的编码方式,提高了软件开发人员的体验感和实用性。
在本实施例中,响应服务器端反馈的目标系统参数,解析所述目标系统参数确定待开发软件的多个通用编码方式,具体为:
根据服务器端的目标系统参数确定其所容纳的最大编译代码视窗面积;
基于所述最大编译代码视窗面积确定服务器端的批次代码处理量;
根据所述批次代码处理量确定服务器端的编码速率;
根据所述编码速率和目标系统参数从预设数据库中筛选出待开发软件的多个候选编码方式;
获取每个候选编码方式的编码参数,基于所述编码参数在服务器端的最大编译代码视窗中利用预设代码样本进行编译,获取每个候选编码方式的编译结果;
根据每个候选编码方式的编译结果确定该候选编码方式在服务器端进行编码时编码结果的集中数据组分布和分散数据组分布;
利用所述集中数据组分布和分散数据组分布构建每个候选编码方式在服务器端进行编码的预编码矩阵;
根据所述预编码矩阵推导出每个候选编码方式在服务器端进行编码时的状态因子;
基于每个候选编码方式在服务器端进行编码时的状态因子确定服务器端在每个候选编码方式编码时的编码通道占用率和编码响应率;
筛选出编码通道占用率大于第一阈值且编码响应率大于第二阈值的第一候选编码方式;
获取每个第一候选编码方式的编码延迟特性参数,根据所述编码延迟特性参数和编码特性参数评估出每个第一候选编码方式在服务器端编码的稳定性和占用资源比例;
选择稳定性大于第三阈值同时占用资源比例小于第四阈值的多个第二候选编码方式作为待开发软件的多个通用编码方式。
上述技术方案的有益效果为:通过确定服务器端的编码效率进而来筛选出匹配的候选编码方式可以保证筛选的编码方式符合最基本的编码效率要求,保证了筛选的编码方式的高质量性和可靠性,进一步地,通过评估出服务器端在每个候选编码方式编码时的编码通道占用率和编码响应率可以快速准确地根据每个候选编码方式的编码特性来评估出其在服务器端编码的稳定性和可靠性,为筛选出高效率高稳定性地编码方式奠定了条件,提高了实用性。
在一个实施例中,所述利用所述编码风格函数对待开发软件的汇编代码进行托管编译,根据编译结果生成应用软件,包括:
对所述编码风格函数进行编译,获得托管编码函数;
对所述汇编代码进行统一预处理以生成所述托管编码函数对应的函数调用信息;
利用所述托管编码函数基于所述函数调用信息进行托管编译,获取待开发软件的运行信息编译文件;
根据所述运行信息编译文件生成所述应用软件。
上述技术方案的有益效果为:通过将汇编代码生成函数调用信息可以快速地对其进行调用和编码,进一步地提高了稳定性和代码编译效率,进一步地,通过根据运行信息编译文件生成应用软件可以保证其运行可行性,提高了应用软件的稳定性。
在一个实施例中,所述利用所述托管编码函数基于所述函数调用信息进行托管编译,获取待开发软件的运行信息编译文件,包括:
利用所述托管编码函数基于所述函数调用信息进行托管编译,获取待开发软件的初级代码;
基于待开发软件的配置信息获取其对应的运行配置文件;
将所述运行配置文件和待开发软件的初级代码添加至编译器中进行二次编译,获取编译文件;
将所述编译文件确认为待开发软件的运行信息编译文件。
上述技术方案的有益效果为:通过对待开发软件的初级代码和运行配置文件结合进行编译既可以保证待开发软件在编码后的运行可行性同时还可以使得初级代码与运行配置文件相对应,保证应用软件各个功能的兼容运行,避免出现程序功能冲突情况的发生,进一步地提高了稳定性。
在一个实施例中,所述方法还包括:
获取应用软件所搭载目标平台的网络地址、磁盘参数和CPU参数;
根据所述网络地址、磁盘参数和CPU参数生成目标平台的运行码;
提取所述应用软件的注册信息,根据所述注册信息和目标平台的运行码生成应用软件在目标平台上的运行授权信息;
基于所述运行授权信息,对所述应用软件进行授权处理。
上述技术方案的有益效果为:通过根据搭载目标平台的硬件参数和网络参数来对应用软件进行授权信息赋予可以保证应用软件在目标平台的运行稳定性和运行权限,提高了目标平台所搭载的其他应用软件的数据安全,进一步地提高了实用性。
在一个实施例中,在检查通过后根据所述配置信息从源代码数据库中调取待开发软件的源代码之后,还包括:
对所述源代码进行预处理,获取预处理后的源代码;
获取所述预处理后的源代码的原始注释文件,利用第三方工具处理所述预处理后的源代码,获取源代码的当前注释文件;
对比所述原始注释文件和当前注释文件,根据对比结果确定源代码的损失程度,基于所述损失程度生成调取源代码的分析数据;
将所述分析数据上传到源代码数据库中以使其对损失源代码进行修复。
上述技术方案的有益效果为:通过对源代码进行损失分析可以一定程度上对源代码数据库中的数据进行运维,保证了数据的完整性和可靠性,进一步地提高了实用性。
在一个实施例中,所述方法还包括:
获取应用软件的功能特性,基于所述功能特性生成对应的测试操作事件;
根据所述测试操作事件调用测试脚本模板文件,将所述测试操作事件输入到所述测试脚本模板文件中获得功能测试文件;
调用所述应用软件的相关驱动文件,在所述相关驱动文件上运行所述功能测试文件,获取运行结果;
根据所述运行结果确定应用程序的文件操作序列,对所述文件操作序列进行故障排查,根据排查结果确定应用程序的可靠性。
上述技术方案的有益效果为:通过生成测试操作事件可以针对应用软件的软件功能来生成适配的测试事件,保证了测试样本的吻合度,进一步地,通过生成功能测试文件可以使得测试事件的格式符合检测要求,保证了检测过程的顺利进行,进一步地提高了稳定性,进一步地,通过对文件操作序列进行故障排查可以针对应用软件的驱动文件对于测试文件的操作参数来快速地评估出其是否存在自身故障的情况,提高了故障排查效率和准确性。
本实施例还公开了一种在线编码系统的代码托管系统,如图4所示,该系统包括:
获取模块401,用于获取服务器端上传的待开发软件的汇编代码;
创建模块402,用于根据所述汇编代码创建目标编码项目并将其上传到在线编码系统中;
选择模块403,用于获取待开发软件的目标编码方式并选择其相应的编码风格函数;
编译模块404,用于利用所述编码风格函数对待开发软件的汇编代码进行托管编译,根据编译结果生成应用软件。
上述技术方案的工作原理及有益效果在方法权利要求中已经说明,此处不再赘述。
本领域技术用户员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (8)

1.一种在线编码系统的代码托管方法,其特征在于,包括以下步骤:
获取服务器端上传的待开发软件的汇编代码;
根据所述汇编代码创建目标编码项目并将其上传到在线编码系统中;
获取待开发软件的目标编码方式并选择其相应的编码风格函数;
利用所述编码风格函数对待开发软件的汇编代码进行托管编译,根据编译结果生成应用软件;
所述获取待开发软件的目标编码方式并选择其相应的编码风格函数,包括:
向所述服务器端发出获取待开发软件搭载系统的系统参数的请求;
响应服务器端反馈的目标系统参数,解析所述目标系统参数确定待开发软件的多个通用编码方式;
基于服务器端在所述多个通用编码方式中选择的期望编码方式作为所述目标编码方式;
获取所述目标编码方式的编码特性,基于所述编码特性在预设编码函数库中选择目标编码方式对应的编码风格函数;
所述利用所述编码风格函数对待开发软件的汇编代码进行托管编译,根据编译结果生成应用软件,包括:
对所述编码风格函数进行编译,获得托管编码函数;
对所述汇编代码进行统一预处理以生成所述托管编码函数对应的函数调用信息;
利用所述托管编码函数基于所述函数调用信息进行托管编译,获取待开发软件的运行信息编译文件;
根据所述运行信息编译文件生成所述应用软件。
2.根据权利要求1所述在线编码系统的代码托管方法,其特征在于,所述获取服务器端上传的待开发软件的汇编代码,包括:
接收用户端发送的托管任务并对其进行解析,根据解析结果确定用户端是否具备代码托管条件;
若是,通过所述服务器端接收所述托管任务对应的待开发软件的配置信息并对其进行基础检查;
检查通过后根据所述配置信息从源代码数据库中调取待开发软件的源代码;
根据所述托管任务获取汇编指令,基于所述汇编指令根据所述待开发软件的源代码生成所述汇编代码。
3.根据权利要求1所述在线编码系统的代码托管方法,其特征在于,所述根据所述汇编代码创建目标编码项目并将其上传到在线编码系统中,包括:
确定所述汇编代码的代码格式并根据其选择适配的代码存储框架;
将所述汇编代码导入到所述代码存储框架中,定义一个编码模板项目;
将所述代码存储框架部署到所述编码模板项目中获得所述目标编码项目,检测所述目标编码项目的基础运行参数是否合格,获取检测结果;
若所述检测结果为基础运行参数合格,将所述目标编码项目通过预设方式上传到所述在线编码系统上。
4.根据权利要求1所述在线编码系统的代码托管方法,其特征在于,所述利用所述托管编码函数基于所述函数调用信息进行托管编译,获取待开发软件的运行信息编译文件,包括:
利用所述托管编码函数基于所述函数调用信息进行托管编译,获取待开发软件的初级代码;
基于待开发软件的配置信息获取其对应的运行配置文件;
将所述运行配置文件和待开发软件的初级代码添加至编译器中进行二次编译,获取编译文件;
将所述编译文件确认为待开发软件的运行信息编译文件。
5.根据权利要求1所述在线编码系统的代码托管方法,其特征在于,所述方法还包括:
获取应用软件所搭载目标平台的网络地址、磁盘参数和CPU参数;
根据所述网络地址、磁盘参数和CPU参数生成目标平台的运行码;
提取所述应用软件的注册信息,根据所述注册信息和目标平台的运行码生成应用软件在目标平台上的运行授权信息;
基于所述运行授权信息,对所述应用软件进行授权处理。
6.根据权利要求2所述在线编码系统的代码托管方法,其特征在于,在检查通过后根据所述配置信息从源代码数据库中调取待开发软件的源代码之后,还包括:
对所述源代码进行预处理,获取预处理后的源代码;
获取所述预处理后的源代码的原始注释文件,利用第三方工具处理所述预处理后的源代码,获取源代码的当前注释文件;
对比所述原始注释文件和当前注释文件,根据对比结果确定源代码的损失程度,基于所述损失程度生成调取源代码的分析数据;
将所述分析数据上传到源代码数据库中以使其对损失源代码进行修复。
7.根据权利要求1所述在线编码系统的代码托管方法,其特征在于,所述方法还包括:
获取应用软件的功能特性,基于所述功能特性生成对应的测试操作事件;
根据所述测试操作事件调用测试脚本模板文件,将所述测试操作事件输入到所述测试脚本模板文件中获得功能测试文件;
调用所述应用软件的相关驱动文件,在所述相关驱动文件上运行所述功能测试文件,获取运行结果;
根据所述运行结果确定应用程序的文件操作序列,对所述文件操作序列进行故障排查,根据排查结果确定应用程序的可靠性。
8.一种在线编码系统的代码托管系统,其特征在于,该系统包括:
获取模块,用于获取服务器端上传的待开发软件的汇编代码;
创建模块,用于根据所述汇编代码创建目标编码项目并将其上传到在线编码系统中;
选择模块,用于获取待开发软件的目标编码方式并选择其相应的编码风格函数;
编译模块,用于利用所述编码风格函数对待开发软件的汇编代码进行托管编译,根据编译结果生成应用软件;
所述获取待开发软件的目标编码方式并选择其相应的编码风格函数,包括:
向所述服务器端发出获取待开发软件搭载系统的系统参数的请求;
响应服务器端反馈的目标系统参数,解析所述目标系统参数确定待开发软件的多个通用编码方式;
基于服务器端在所述多个通用编码方式中选择的期望编码方式作为所述目标编码方式;
获取所述目标编码方式的编码特性,基于所述编码特性在预设编码函数库中选择目标编码方式对应的编码风格函数;
所述利用所述编码风格函数对待开发软件的汇编代码进行托管编译,根据编译结果生成应用软件,包括:
对所述编码风格函数进行编译,获得托管编码函数;
对所述汇编代码进行统一预处理以生成所述托管编码函数对应的函数调用信息;
利用所述托管编码函数基于所述函数调用信息进行托管编译,获取待开发软件的运行信息编译文件;
根据所述运行信息编译文件生成所述应用软件。
CN202211470883.3A 2022-11-23 2022-11-23 一种在线编码系统的代码托管方法及系统 Active CN116225441B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211470883.3A CN116225441B (zh) 2022-11-23 2022-11-23 一种在线编码系统的代码托管方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211470883.3A CN116225441B (zh) 2022-11-23 2022-11-23 一种在线编码系统的代码托管方法及系统

Publications (2)

Publication Number Publication Date
CN116225441A CN116225441A (zh) 2023-06-06
CN116225441B true CN116225441B (zh) 2023-07-21

Family

ID=86584837

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211470883.3A Active CN116225441B (zh) 2022-11-23 2022-11-23 一种在线编码系统的代码托管方法及系统

Country Status (1)

Country Link
CN (1) CN116225441B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113296787A (zh) * 2021-06-10 2021-08-24 中国电子科技集团公司第十五研究所 一种基于云平台的在线开发与代码托管系统与使用方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7472375B2 (en) * 2005-03-29 2008-12-30 Intel Corporation Creating managed code from native code

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113296787A (zh) * 2021-06-10 2021-08-24 中国电子科技集团公司第十五研究所 一种基于云平台的在线开发与代码托管系统与使用方法

Also Published As

Publication number Publication date
CN116225441A (zh) 2023-06-06

Similar Documents

Publication Publication Date Title
US7895565B1 (en) Integrated system and method for validating the functionality and performance of software applications
CN103150249B (zh) 一种自动化测试的方法和系统
US7673179B2 (en) Online testing unification system with remote test automation technology
CN109726132A (zh) 一种软件测试方法及软件测试自动化管理系统
CN103164328A (zh) 一种业务功能的回归测试方法、装置及系统
US7793271B2 (en) Bi-directional product development process simulation
CN110333895B (zh) 一种面向电力调控云的自动化运维平台
CN111309609B (zh) 软件处理系统
Heithoff et al. Digital twins for sustainable software systems
EP2913757A1 (en) Method, system, and computer software product for test automation
CN116069334B (zh) 一种基于云原生的在线开发与代码托管方法及系统
CN116225441B (zh) 一种在线编码系统的代码托管方法及系统
CN115220707B (zh) 一种基于区块链的软件开发管理方法及系统
CN111966665A (zh) 数据迁移测试方法及装置
CN115629956A (zh) 一种基于接口自动化测试的软件缺陷管理方法及系统
CN113867714A (zh) 一种适配多语言的自动代码生成方法
CN115269387A (zh) 接口自动化测试方法及装置
CN114968819A (zh) 面向微服务持续集成的代码质量问题检测及修复方法
CN114676066A (zh) 目标应用的安全测试方法及其装置、电子设备及存储介质
CN113282504A (zh) 一种增量代码覆盖率检测方法及业务开发方法、装置
CN115687054A (zh) 基于业务分割还原的自适应测试方法以及装置
CN112740230A (zh) 数据标注系统、方法和数据标注管理器
CN112579455B (zh) 一种接口自动化测试方法、装置、电子设备及存储介质
CN109669868A (zh) 软件测试的方法及系统
CN116720973B (zh) 基于rpa的数字财政管理方法及系统

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
GR01 Patent grant
GR01 Patent grant