CN109710262A - 软件发布方法和装置、计算机可读存储介质 - Google Patents
软件发布方法和装置、计算机可读存储介质 Download PDFInfo
- Publication number
- CN109710262A CN109710262A CN201811516908.2A CN201811516908A CN109710262A CN 109710262 A CN109710262 A CN 109710262A CN 201811516908 A CN201811516908 A CN 201811516908A CN 109710262 A CN109710262 A CN 109710262A
- Authority
- CN
- China
- Prior art keywords
- software package
- code
- installation software
- packet
- formal
- 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
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明涉及一种软件发布方法和装置、计算机可读存储介质,软件发布方法包括:获取待发布软件的代码,并对代码进行审核以判断是否合格;当审核合格时,对代码进行编译打包处理以生成预安装软件包;对预安装软件包进行测试以获取正式安装软件包;对正式安装软件包进行验证,并根据验证结果对正式安装软件包进行相应的标识以生成标识信息;根据标识信息对正式安装软件包自动进行发布,可以实现软件代码的审核、编译、打包、测试、验证、发布的全自动化控制,提高了软件发布的效率和精准度、节省了人力,也减小了人为原因造成的失误操作。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种软件发布方法和装置、计算机可读存储介质。
背景技术
软件的发布是软件开发者在向使用者提供软件的一个重要环节。当前,随着互联网发展的日新月异,用户和业务的需求变化越来越频繁。因此,软件项目的版本发布密度也越来越高。
一般软件版本发布时是通过人工检查,提交代码后获取版本,然后进行手工编译,例如登录SVN,将软件包下载,根据版本号命名,再发布。这种手动发布的方式不仅繁琐,费时费力,效率低,而且易出错。
发明内容
本发明实施例提供一种软件发布方法和装置、计算机可读存储介质,可以实现软件自动发布,提高发布效率和精准度。
一种软件发布方法,包括:
获取待发布软件的代码,并对所述代码进行审核以判断是否合格;
当所述审核合格时,对所述代码进行编译打包处理以生成预安装软件包;
对所述预安装软件包进行测试以获取正式安装软件包;
对所述正式安装软件包进行验证,并根据验证结果对所述正式安装软件包进行相应的标识以生成标识信息;
根据所述标识信息对所述正式安装软件包自动进行发布。
在一实施例中,所述对所述正式安装软件包进行验证,并根据验证结果对所述正式安装软件包进行相应的标识以生成标识信息,包括:
基于版本发布系统对所述正式安装软件包的各项服务进行验证;
当各项所述服务验证成功时,对所述正式安装软件包进行标识,以获取第一标识信息;
当至少一项所述服务验证失败时,对所述正式安装软件包进行标识,以获取第二标识信息;其中,所述第一标识信息与所述第二标识信息不同。
在一实施例中,所述根据所述标识信息对所述正式安装软件包自动进行发布,包括:
当所述标识信息为第一标识信息时,则对具有所述第一标识信息的所述正式安装软件包自动进行发布。
在一实施例中,所述方法还包括:
当所述标识信息为第二标识信息时,获取验证过程中记录的日志信息;
根据所述日志信息确定验证失败的服务项,并出验证失败的提示信息,所述提示信息携带所述服务项的标识;
根据所述提示信息再次提交代码并进行审核及编译操作。
在一实施例中,所述获取待发布软件的代码,并对所述代码进行审核以判断是否合格,包括:
获取待发布软件的代码和版本号,将所述代码对应存储在相应所述版本号的存储目录下;
审核所述代码是否符合预设代码规范;
当符合所述预设代码审核规范时,则审核合格;
当不符合所述预设代码审核规范时,则生成提示文件,并向用户发送所述提示文件,所述提示文件中包含不符合规范的原因。
在一实施例中,所述对所述代码进行编译打包处理以生成预安装软件包,包括:
采用静态代码扫描对所述代码进行编译操作;
当编译完成后对所述代码进行打包操作以生成预安装软件包。
在一实施例中,所述对所述预安装软件包进行测试以获取正式安装软件包,包括:
基于版本迭代系统对所述预安装软件包依次进行基线测试、正式测试;
当所述正式测试通过后,将所述预安装软件包定义为所述正式安装软件包。
在一实施例中,所述方法还包括:
通过预设通讯方式发出所述正式安装软件包发布成功的通知。
一种软件发布装置,包括:
审核模块,用于获取待发布软件的代码,并对所述代码进行审核以判断是否合格;
编译模块,用于当所述审核合格时,对所述代码进行编译打包处理以生成预安装软件包;
测试模块,用于对所述预安装软件包进行测试以获取正式安装软件包;
验证模块,用于对所述正式安装软件包进行验证,并根据验证结果对所述正式安装软件包进行相应的标识以生成标识信息;
发布模块,用于根据所述标识信息对所述正式安装软件包自动进行发布。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的软件发布方法的步骤。
上述软件发布方法和装置、计算机可读存储介质,可以获取待发布软件的代码,并对代码进行审核以判断是否合格;当审核合格时,对代码进行编译打包处理以生成预安装软件包;对预安装软件包进行测试以获取正式安装软件包;对正式安装软件包进行验证,并根据验证结果对正式安装软件包进行相应的标识以生成标识信息;根据标识信息对正式安装软件包自动进行发布,可以对正式安装软件包进行标识,并根据该标识信息自动进行发布,可以实现软件代码的审核、编译、打包、测试、验证、发布的全自动化控制,提高了软件发布的效率和精准度、节省了人力,也减小了人为原因造成的失误操作。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中服务器的结构示意图;
图2为一个实施例中软件发布方法的流程示意图;
图3为一个实施例中对所述正式安装软件包进行验证,并根据验证结果对所述正式安装软件包进行相应的标识以生成标识信息的流程图;
图4为另一个实施例中软件发布方法的流程示意图;
图5为一个实施例中获取待发布软件的代码,并对所述代码进行审核以判断是否合格的流程示意图;
图6为一个实施例中软件发布装置的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,在一个实施例中,提供了一种用于实现一种软件发布的服务器,包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口和触控屏。其中处理器具有计算功能,该处理器被配置为执行一种软件发布方法。非易失性存储介质包括磁存储介质、光存储介质和闪存式存储介质中的至少一种,非易失性存储介质存储有操作系统和软件发布装置。该软件发布装置用于实现一种软件发布方法。触控屏包括显示屏和触控层,显示屏包括液晶显示屏、柔性显示屏和电子墨水显示屏中的至少一种。
在一个实施例中,提供了一种软件发布方法,本实施例以该方法应用于上述服务器来举例说明。软件在本发明实施例中可以理解为应用程序(Application,APP)。其中,终端上的应用程序指为完成某项或多项特定工作的计算机程序,它运行在用户模式,可以和用户进行交互,具有可视的用户界面。
其中,软件可以为PC版本的软件,也可以为移动版本的软件。对于PC版本的软件可以是运行Windows、Mac OS、Linus和UNIX等操作系统的软件;对于移动版本的软件可以是运行Android、iOS、windows phone、Symbian、BlackBerry OS、web os、windows mobile等操作系统的软件。
如图2所示,该方法具体包括步骤202-步骤210。其中,
步骤202,获取待发布软件的代码,并对代码进行审核以判断是否合格。
开发人员可将具有不同服务项的待发布软件的代码开发完成后,上传提交到编译服务器,该编译服务器就可以获取待发布软件的代码。编码服务器可以对获取的代码进行审核,并判断其审核是否合格。例如,可以预设设定该待发布软件的预设审核规范,当编码服务器获取的代码符合该预设审核规范时,则可认为该审核合格,若代码不符合该预设审核规范时,则认为该审核不合格。
其中,需要说明的是,待发布软件的各个服务可以理解为待发布软件的各个功能,软件系统是由各个服务(功能)组成的,不同的服务可由不同的开发人员来编写代码,也可以由同一开发人员来编写代码。
步骤204,当审核合格时,对代码进行编译打包处理以生成预安装软件包。
在一实施例中,编译服务器可以对审核通过的代码进行编译。其中,可以采用静态代码扫描来实现对审查合格的代码的编译,一般符合要求的代码才能编译成功。静态代码扫描可以理解为程序静态分析(Program Static Analysis),是指在不运行代码的方式下,通过词法分析、语法分析、控制流、数据流分析等技术对程序代码进行扫描,验证代码是否满足规范性、安全性、可靠性、可维护性等指标的一种代码分析技术。编译流程差不多分为这5个阶段:词法分析生成token流、语法分析生成抽象语法树、针对抽象语法树进行语义分析,构建内部数据结构,如控制流图、生成中间代码、代码优化、目标代码生成。
当编译完成后,对代码进行打包操作以生成预安装软件包。在一实施例中,生成的预安装软件包的格式可以为多种,例如,IPA、APK、exe、web等适用于各类平台的格式。在此,对预安装软件包的格式不做进一步的限定。
步骤206,对预安装软件包进行测试以获取正式安装软件包。
在一实施例中,可以基于版本迭代系统对预安装软件包依次进行基线测试、正式测试。当正式测试通过后,将预安装软件包定义为正式安装软件包。例如,编译服务器可将编译并打包处理后的预安装软件包输入至版本迭代系统,并触发基线测试。当基线测试通过后,并对该预安装软件包进行正式测试,正式测试成功后预安装软件包将预安装软件包定义为正式安装软件包,其中,正式安装软件包可以理解为可上线版本的安装程序包。
测试过程中,可以分别启动功能测试脚本、性能测试脚本以及安全测试脚本等,对系统进行功能、性能以及安全等的测试。同时,还可以对应生成相应的测试结果。
需要说明的是,版本迭代系统可以嵌设在编码服务器中,可以嵌设在其他能够实现测试的其他服务器中。
步骤208,对正式安装软件包进行验证,并根据验证结果对正式安装软件包进行相应的标识以生成标识信息;
可以将正式安装软件包提交至版本发布系统,基于版本发布系统对正式安装软件包进行验证,并根据验证结果对正式安装软件包进行相应的标识以生成标识信息。例如,版本发布系统可以对正式安装软件包中各个服务的完整性进行验证,当验证结果为完整时,可以将该正式安装软件包的软件状态进行标识以生成标识信息;当验证结果为不完整时,也可以将该正式安装软件包的软件状态进行标识以生成标识信息。其中,当验证结果为完整或不完整时,其对应的标识信息不同。
标识信息可以数字、字母、特殊符合等组合进行表示。例如,标识信息可以用CLOSE或OPEN进行标识,其中,标识当验证结果为完整时,可以用CLOSE进行标识,标识当验证结果为不完整时,可以用OPEN进行标识。
步骤210,根据标识信息对正式安装软件包自动进行发布。
在一实施例中,服务器可以获取每个正式安装软件包的标识信息,当标识信息为验证结果为完整时的标识信息时,可以对具有该标识信息的正式安装软件包自动进行发布。例如,可以对具有CLOSE标识的正式安装软件包自动进行发布。
本实施例中,可以获取待发布软件的代码,并对代码进行审核以判断是否合格;当审核合格时,对代码进行编译打包处理以生成预安装软件包;对预安装软件包进行测试以获取正式安装软件包;对正式安装软件包进行验证,并根据验证结果对正式安装软件包进行相应的标识以生成标识信息;根据标识信息对正式安装软件包自动进行发布,可以对正式安装软件包进行标识,并根据该标识信息自动进行发布,可以实现软件代码的审核、编译、打包、测试、验证、发布的全自动化控制,提高了软件发布的效率和精准度、节省了人力,也减小了人为原因造成的失误操作。
如图3所示,在一实施例中,对正式安装软件包进行验证,并根据验证结果对正式安装软件包进行相应的标识以生成标识信息,包括步骤302-步骤306。其中,
步骤302,基于版本发布系统对正式安装软件包的各项服务进行验证。
步骤304,当各项服务验证成功时,对正式安装软件包进行标识,以获取第一标识信息。
步骤306,当至少一项服务验证失败时,对正式安装软件包进行标识,以获取第二标识信息。其中,第一标识信息与第二标识信息不同。
在一实施例中,可以将正式安装软件包提交至版本发布系统,基于版本发布系统对正式安装软件包进行验证。其中,该正式安装软件包中包括多项服务,可以按照预设验证方式对每项服务进行验证。
当所有的服务都验证成功时,表明该正式安装软件包的软件具有完整性,可以对其软件状态进行标识,以生成第一标识信息。
当至少有一项的服务验证失败时,表明该正式安装软件包的软件不具有完整性,可以对其软件状态进行标识,以生成第二标识信息。其中,第一标识信息与第二标识信息不同。
第一标识信息可以数字、字母、特殊符合等组合进行表示。例如,第一标识信息可以用CLOSE进行标识。第二标识信息可以用OPEN进行标识。
需要说明的是,版本发布系统可以嵌设在编码服务器中,可以嵌设在其他能够实现验证的其他服务器中。其中,版本迭代系统、版本发布系统可设置在同一服务器中,也可以设置在不同的服务器中,可以根据实际需求进行设定,在此,不做进一步的限定。
如图4,在一实施例中,方法还包括:
步骤401,获取待发布软件的代码,并对代码进行审核以判断是否合格。
步骤402,当审核合格时,对代码进行编译打包处理以生成预安装软件包。
步骤403,对预安装软件包进行测试以获取正式安装软件包。
步骤404,基于版本发布系统对正式安装软件包的各项服务进行验证。
其中,步骤401-步骤404与前述实施例中步骤202-步骤208一一对应,在此,不再赘述。
步骤405,当各项服务验证成功时,对正式安装软件包进行标识,以获取第一标识信息。
步骤406,当至少一项服务验证失败时,对正式安装软件包进行标识,以获取第二标识信息。
其中,步骤405-步骤406与前述实施例中步骤304-步骤306一一对应,在此,不再赘述。
步骤407,当标识信息为第一标识信息时,则对具有第一标识信息的正式安装软件包自动进行发布。
其中,步骤407与前述实施例中步骤210对应,在此,不再赘述。
步骤408,当标识信息为第二标识信息时,获取验证过程中记录的日志信息。
步骤409,根据日志信息确定验证失败的服务项,并出验证失败的提示信息,提示信息携带服务项的标识。
当标识信息为第二标识信息时,则表明该正式安装软件包的服务不具备完整性,也即,不能实现所有功能。在验证过程中,可以生成相应的日志,用于记录整个验证过程。当正式安装软件包的标识信息为第二标识信息时,可以获取验证过程中记录的日志信息。同时,根据该日志信息可以定位并确定有问题的服务项,也即验证失败的服务项。其中,正式安装软件包中每个服务项都具有唯一性的标识,该标识用于标识该服务项的身份信息。当确定出验证失败的服务项时,可以提取该服务项的标识或名称等信息,并向用户发送验证失败的提示信息。提示信息携带服务项的标识,方便用户能够及时定位出该验证失败的服务项。
步骤410,根据提示信息再次提交代码并进行审核及编译操作。
当用户接受到该提示信息时,可以根据该提示信息携带的服务项标识,对该服务项的代码进行修改等编辑,并在此提交代码至编译服务器,以在此启动软件发布方法的流程,由编译服务器对该再次提交的代码进行审核、编译、测试、验证、发布等操作。
本实施例中,软件发布方法,可以获取正式安装软件包的标识信息,当该标识信息为第一标识信息时,可以自动对该正式安装软件包自动进行发布,提高了软件发布的效率和精准度、节省了人力;当该标识信息为第二标识信息时,可以获取该正式安装软件包中验证失败的服务项,并对该服务项进行修改,能够做到了可控可溯源。
如图5所示,在一实施例中,获取待发布软件的代码,并对代码进行审核以判断是否合格,包括:
步骤502,获取待发布软件的代码和版本号,将代码对应存储在相应版本号的存储目录下。
步骤504,审核所述代码是否符合预设代码规范。
当开发人员将待发布软件的代码提交至编译服务器时,该编译服务器可以获取该代码的版本号,并将该代码对应存储在相应版本号的存储目录下,可以有效管理存储在编译服务器中的不同版本的代码。
当触发审核时,编译服务器可以从相应的存储目录下调取该代码,并对该代码进行审核,例如可以调用静态代码检测模块,对代码进行规范性检测,并审核该代码是否符合预设代码规范,当符合该预设代码规范时,则执行步骤506,审核合格。当不符合预设代码审核规范时,则执行步骤508,生成提示文件,并向用户发送提示文件,提示文件中包含不符合规范的原因,方便用户对提交的代码中不符合规范的代码进行修改。
在一实施例中,方法还包括:通过预设通讯方式发出正式安装软件包发布成功的通知的步骤。
步骤210,根据标识信息对正式安装软件包自动进行发布后,还可通过预设通讯方式发出正式安装软件包发布成功的通知。具体的,可以通过邮件或短信通知的通讯方式将正式安装软件包发布成功的消息告知用户。
理解的是,虽然图2-5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-5中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图6所示,本发明还提供一种软件发布装置,包括:审核模块610、编译模块620、测试模块630、验证模块640和发布模块650。其中,
审核模块610,用于获取待发布软件的代码,并对代码进行审核以判断是否合格;
编译模块620,用于当审核合格时,对代码进行编译打包处理以生成预安装软件包;
测试模块630,用于对预安装软件包进行测试以获取正式安装软件包;
验证模块640,用于对正式安装软件包进行验证,并根据验证结果对正式安装软件包进行相应的标识以生成标识信息;
发布模块650,用于根据标识信息对正式安装软件包自动进行发布。
上述软件发布装置,能够获取待发布软件的代码,并对代码进行审核以判断是否合格;当审核合格时,对代码进行编译打包处理以生成预安装软件包;对预安装软件包进行测试以获取正式安装软件包;对正式安装软件包进行验证,并根据验证结果对正式安装软件包进行相应的标识以生成标识信息;根据标识信息对正式安装软件包自动进行发布,可以对正式安装软件包进行标识,并根据该标识信息自动进行发布,可以实现软件代码的审核、编译、打包、测试、验证、发布的全自动化控制,提高了软件发布的效率和精准度、节省了人力,也减小了人为原因造成的失误操作。
在一实施例中,验证模块640,包括:
验证单元,用于基于版本发布系统对正式安装软件包的各项服务进行验证;
标识单元,用于当各项服务验证成功时,对正式安装软件包进行标识,以获取第一标识信息;当至少一项服务验证失败时,对正式安装软件包进行标识,以获取第二标识信息;其中,第一标识信息与第二标识信息不同。
在一实施例中,发布模块还用于
当标识信息为第一标识信息时,则对具有第一标识信息的正式安装软件包自动进行发布。
在一实施例中,装置还包括提示模块,用于当标识信息为第二标识信息时,获取验证过程中记录的日志信息;根据日志信息确定验证失败的服务项,并出验证失败的提示信息,提示信息携带服务项的标识;根据提示信息再次提交代码并进行审核及编译操作。
当该标识信息为第二标识信息时,可以获取该正式安装软件包中验证失败的服务项,并对该服务项进行修改,能够做到了可控可溯源。
在一实施例中,审核模块包括:
存储单元,用于获取待发布软件的代码和版本号,将代码对应存储在相应版本号的存储目录下;
审核单元,用于审核代码是否符合预设代码规范;当符合预设代码审核规范时,则审核合格;当不符合预设代码审核规范时,则生成提示文件,并向用户发送提示文件,提示文件中包含不符合规范的原因,方便用户对提交的代码中不符合规范的代码进行修改。
在一实施例中,编译模块还用于采用静态代码扫描对代码进行编译操作;当编译完成后对代码进行打包操作以生成预安装软件包。
在一实施例中,测试模块还用于基于版本迭代系统对预安装软件包依次进行基线测试、正式测试;当正式测试通过后,将预安装软件包定义为正式安装软件包。
在一实施例中,装置还包括通知模块,用于通过预设通讯方式发出正式安装软件包发布成功的通知。
具体的,可以通过邮件或短信通知的通讯方式将正式安装软件包发布成功的消息告知用户。
上述软件发布装置中各个模块的划分仅用于举例说明,在其他实施例中,可将软件发布装置按照需要划分为不同的模块,以完成上述软件发布装置的全部或部分功能。
关于软件发布装置的具体限定可以参见上文中对于软件发布方法的限定,在此不再赘述。上述软件发布装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
本发明实施例还提供了一种计算机可读存储介质。一个或多个包含计算机可执行指令的非易失性计算机可读存储介质,当计算机可执行指令被一个或多个处理器执行时,使得处理器执行软件发布方法的步骤。
本发明所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM),它用作外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种软件发布方法,其特征在于,包括:
获取待发布软件的代码,并对所述代码进行审核以判断是否合格;
当所述审核合格时,对所述代码进行编译打包处理以生成预安装软件包;
对所述预安装软件包进行测试以获取正式安装软件包;
对所述正式安装软件包进行验证,并根据验证结果对所述正式安装软件包进行相应的标识以生成标识信息;
根据所述标识信息对所述正式安装软件包自动进行发布。
2.根据权利要求1所述的方法,其特征在于,所述对所述正式安装软件包进行验证,并根据验证结果对所述正式安装软件包进行相应的标识以生成标识信息,包括:
基于版本发布系统对所述正式安装软件包的各项服务进行验证;
当各项所述服务验证成功时,对所述正式安装软件包进行标识,以获取第一标识信息;
当至少一项所述服务验证失败时,对所述正式安装软件包进行标识,以获取第二标识信息;其中,所述第一标识信息与所述第二标识信息不同。
3.根据权利要求2所述的方法,其特征在于,所述根据所述标识信息对所述正式安装软件包自动进行发布,包括:
当所述标识信息为第一标识信息时,则对具有所述第一标识信息的所述正式安装软件包自动进行发布。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述标识信息为第二标识信息时,获取验证过程中记录的日志信息;
根据所述日志信息确定验证失败的服务项,并出验证失败的提示信息,所述提示信息携带所述服务项的标识;
根据所述提示信息再次提交代码并进行审核及编译操作。
5.根据权利要求1所述的方法,其特征在于,所述获取待发布软件的代码,并对所述代码进行审核以判断是否合格,包括:
获取待发布软件的代码和版本号,将所述代码对应存储在相应所述版本号的存储目录下;
审核所述代码是否符合预设代码规范;
当符合所述预设代码审核规范时,则审核合格;
当不符合所述预设代码审核规范时,则生成提示文件,并向用户发送所述提示文件,所述提示文件中包含不符合规范的原因。
6.根据权利要求1所述的方法,其特征在于,所述对所述代码进行编译打包处理以生成预安装软件包,包括:
采用静态代码扫描对所述代码进行编译操作;
当编译完成后对所述代码进行打包操作以生成预安装软件包。
7.根据权利要求1所述的方法,其特征在于,所述对所述预安装软件包进行测试以获取正式安装软件包,包括:
基于版本迭代系统对所述预安装软件包依次进行基线测试、正式测试;
当所述正式测试通过后,将所述预安装软件包定义为所述正式安装软件包。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述方法还包括:
通过预设通讯方式发出所述正式安装软件包发布成功的通知。
9.一种软件发布装置,其特征在于,包括:
审核模块,用于获取待发布软件的代码,并对所述代码进行审核以判断是否合格;
编译模块,用于当所述审核合格时,对所述代码进行编译打包处理以生成预安装软件包;
测试模块,用于对所述预安装软件包进行测试以获取正式安装软件包;
验证模块,用于对所述正式安装软件包进行验证,并根据验证结果对所述正式安装软件包进行相应的标识以生成标识信息;
发布模块,用于根据所述标识信息对所述正式安装软件包自动进行发布。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的软件发布方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811516908.2A CN109710262A (zh) | 2018-12-12 | 2018-12-12 | 软件发布方法和装置、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811516908.2A CN109710262A (zh) | 2018-12-12 | 2018-12-12 | 软件发布方法和装置、计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109710262A true CN109710262A (zh) | 2019-05-03 |
Family
ID=66256369
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811516908.2A Pending CN109710262A (zh) | 2018-12-12 | 2018-12-12 | 软件发布方法和装置、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109710262A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110266762A (zh) * | 2019-05-20 | 2019-09-20 | 广州视琨电子科技有限公司 | 一种数据上传方法、系统、装置及存储介质 |
CN110780881A (zh) * | 2019-11-05 | 2020-02-11 | 杭州安恒信息技术股份有限公司 | 一种软件包制作方法、装置和电子设备 |
CN111045935A (zh) * | 2019-11-29 | 2020-04-21 | 中国建设银行股份有限公司 | 版本自动审核方法、装置、设备及存储介质 |
CN112464174A (zh) * | 2020-10-27 | 2021-03-09 | 华控清交信息科技(北京)有限公司 | 验证多方安全计算软件的方法、装置和用于验证的装置 |
CN112711426A (zh) * | 2019-10-24 | 2021-04-27 | 北京车和家信息技术有限公司 | 嵌入式系统安装包生成方法、装置及服务器 |
CN113741906A (zh) * | 2020-05-29 | 2021-12-03 | 北京沃东天骏信息技术有限公司 | 应用发布的方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015039413A1 (zh) * | 2013-09-18 | 2015-03-26 | 国云科技股份有限公司 | 大型Linux软件包的发布方法 |
CN106155751A (zh) * | 2016-08-02 | 2016-11-23 | 传线网络科技(上海)有限公司 | 应用打包发布方法及装置 |
CN106293811A (zh) * | 2016-07-28 | 2017-01-04 | 北京中电普华信息技术有限公司 | 一种自动打包发布方法及装置 |
CN107402765A (zh) * | 2017-07-27 | 2017-11-28 | 郑州云海信息技术有限公司 | 一种代码审查发布方法及系统 |
CN107463362A (zh) * | 2016-06-03 | 2017-12-12 | 北京京东尚科信息技术有限公司 | 基于多个Jenkins的持续部署的方法和系统 |
CN108897548A (zh) * | 2018-06-29 | 2018-11-27 | 北京金山数字娱乐科技有限公司 | 程序包生产部署方法、装置、系统、电子设备及存储介质 |
-
2018
- 2018-12-12 CN CN201811516908.2A patent/CN109710262A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015039413A1 (zh) * | 2013-09-18 | 2015-03-26 | 国云科技股份有限公司 | 大型Linux软件包的发布方法 |
CN107463362A (zh) * | 2016-06-03 | 2017-12-12 | 北京京东尚科信息技术有限公司 | 基于多个Jenkins的持续部署的方法和系统 |
CN106293811A (zh) * | 2016-07-28 | 2017-01-04 | 北京中电普华信息技术有限公司 | 一种自动打包发布方法及装置 |
CN106155751A (zh) * | 2016-08-02 | 2016-11-23 | 传线网络科技(上海)有限公司 | 应用打包发布方法及装置 |
CN107402765A (zh) * | 2017-07-27 | 2017-11-28 | 郑州云海信息技术有限公司 | 一种代码审查发布方法及系统 |
CN108897548A (zh) * | 2018-06-29 | 2018-11-27 | 北京金山数字娱乐科技有限公司 | 程序包生产部署方法、装置、系统、电子设备及存储介质 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110266762A (zh) * | 2019-05-20 | 2019-09-20 | 广州视琨电子科技有限公司 | 一种数据上传方法、系统、装置及存储介质 |
CN110266762B (zh) * | 2019-05-20 | 2022-03-08 | 广州视琨电子科技有限公司 | 一种数据上传方法、系统、装置及存储介质 |
CN112711426A (zh) * | 2019-10-24 | 2021-04-27 | 北京车和家信息技术有限公司 | 嵌入式系统安装包生成方法、装置及服务器 |
CN112711426B (zh) * | 2019-10-24 | 2023-12-26 | 北京车和家信息技术有限公司 | 嵌入式系统安装包生成方法、装置及服务器 |
CN110780881A (zh) * | 2019-11-05 | 2020-02-11 | 杭州安恒信息技术股份有限公司 | 一种软件包制作方法、装置和电子设备 |
CN111045935A (zh) * | 2019-11-29 | 2020-04-21 | 中国建设银行股份有限公司 | 版本自动审核方法、装置、设备及存储介质 |
CN111045935B (zh) * | 2019-11-29 | 2023-02-03 | 建信金融科技有限责任公司 | 版本自动审核方法、装置、设备及存储介质 |
CN113741906A (zh) * | 2020-05-29 | 2021-12-03 | 北京沃东天骏信息技术有限公司 | 应用发布的方法和装置 |
CN112464174A (zh) * | 2020-10-27 | 2021-03-09 | 华控清交信息科技(北京)有限公司 | 验证多方安全计算软件的方法、装置和用于验证的装置 |
CN112464174B (zh) * | 2020-10-27 | 2023-09-29 | 华控清交信息科技(北京)有限公司 | 验证多方安全计算软件的方法、装置和用于验证的装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109710262A (zh) | 软件发布方法和装置、计算机可读存储介质 | |
Tan et al. | Repairing crashes in android apps | |
CN110147240B (zh) | 基于云存储的应用程序安装方法、系统及存储介质 | |
CN105302554B (zh) | 一种Android系统自动化程序构建方法及系统 | |
CN103019708B (zh) | 用于发布软件的系统 | |
Maurer et al. | TACHYON: Tandem execution for efficient live patch testing | |
US8978015B2 (en) | Self validating applications | |
CN109388535A (zh) | 一种存储性能测试方法、装置及应用服务器 | |
US20060107121A1 (en) | Method of speeding up regression testing using prior known failures to filter current new failures when compared to known good results | |
CN106612204B (zh) | 业务校验方法及装置 | |
CN110119348B (zh) | 一种软件升级测试的方法及终端 | |
CN110377468A (zh) | 一种cpu激活核心数设置的测试方法和相关装置 | |
CN106559223A (zh) | 应用程序签名方法及装置 | |
CN109496417A (zh) | 数据测试方法、装置、设备/终端/服务器及计算机可读存储介质 | |
GB2604980A (en) | Software application component testing | |
Tol et al. | Zeroleak: Using llms for scalable and cost effective side-channel patching | |
CN110990253A (zh) | 一种实现应用调试的方法、装置、计算机存储介质及终端 | |
Mustafa et al. | Understanding the implemented access control policy of Android system services with slicing and extended static checking | |
KR101231746B1 (ko) | SaaS 환경에서의 소프트웨어 개발 시스템 | |
CN107479923A (zh) | 应用程序升级方法、装置及显示终端 | |
US9983983B2 (en) | Auto-generation of testable units for COBOL code | |
CN110309655B (zh) | 一种检测app更新过程中安全性的方法以及检测装置 | |
CN111782226A (zh) | 一种直捷安装安卓应用的方法、系统、设备及介质 | |
CN113553271A (zh) | 一种应用程序内部测试程序生成及测试方法 | |
CN111752735A (zh) | 一种sdk异常排查方法及装置、计算机可读存储介质 |
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 |
Application publication date: 20190503 |
|
RJ01 | Rejection of invention patent application after publication |