本发明涉及程序及数据版本的发布管理的技术领域,尤其涉及一种云端程序及数据配套更新的方法。
背景技术:
软件程序升级,需要使程序部分与数据部分保持兼容和匹配。现有的程序升级方式,一般只兼容最新的数据,而若为使程序更新能不仅能兼容最新的数据,还能兼容各历史数据,在程序开发和数据版本方面的管理工作量变会加大。新开发的程序在满足自身稳定性的同时,由于数据在不断更新,因而还需要不断测试程序和数据的匹配兼容程度,在测试工作进行时,又需要能响应新的需求,因而要对测试结果不断再进行回归测试,工作量大,开发成本较高。
技术实现要素:
本发明的目的在于提供一种程序及数据配套更新的方法,运用本发明提供的方法,能够使得程序更新时的测试工作量减少,程序和数据版本的匹配程度提升,开发成本降低。
为实现上述目的,本发明的技术方案如下:
一种云端程序及数据配套更新的方法,包括以下步骤:
步骤1:获取历史数据包,并对新版本程序与各历史数据包逐一进行匹配测试;
步骤2:提取测试结果为兼容的历史数据包,并将其合并为一兼容数据包;
步骤3:将新版本程序与所述兼容数据包绑定,进行预发布,并在终端设备对所述绑定后的新版本程序与兼容数据包进行整体测试;
步骤4:测试通过后,将所述兼容数据包切分为基础数据包和扩展数据包,将所述新版本程序与基础数据包进行封装打包为基础包,将所述扩展数据包封装打包为扩展包,并正式发布;
步骤5:接收更新请求,向请求端设备传输所述基础包和扩展包;
步骤6:请求端设备下载所述基础包和扩展包,以完成配套更新。
在一实施例中:还包括步骤7:将所述基础数据包和扩展数包据合并为完整数据包,对其进行版本编号,并存入服务器内的第一数据库;
对所述基础数据包和扩展数据包分别进行版本编号,且版本编号相同,并存入服务器内的第二数据库和第三数据库。
在一实施例中:在所述步骤1中,所述的历史数据包为各历史版本的完整数据包。
在一实施例中:在所述步骤1中,所述的历史数据包为各历史版本的基础数据包。
在一实施例中:在所述步骤2中,所提取的测试结果为兼容的历史数据包为基础数据包,并获取最新版本的扩展数据包,将所述各测试结果为兼容的基础数据包与最新版本的扩展数据包合并,获得所述兼容数据包。
在一实施例中:对所述兼容数据包进行切分的依据在于数据文件的创建时间;若数据文件的创建时间在上一版本程序的创建时间之前,则被切分为基础数据包;若数据文件的创建时间在上一版本程序的创建时间之后,则被切分为扩展数据包。
在一实施例中:所述步骤2中匹配测试的方法为白盒测试或黑盒测试。
在一实施例中:所述请求端设备选择在闲时下载所述扩展包。
本发明的所提供的更新方法,通过采用新版本程序先与历史数据进行匹配测试,筛选出兼容新版本程序的数据内容,随后将兼容的各版本数据内容合并后与该新版本程序进行绑定,并进行整体测试,以完成前期的测试匹配步骤,避免了现有技术中需要使用新版本程序与最新数据以及各版本数据均进行整体测试的繁琐步骤,使得新版的数据不断地由旧版数据整合更新而来,而新版本的程序除了能够匹配最新的数据外,还能够匹配大部分旧有的数据。此外,本发明的实施例中,还对设备的更新方式作了改进,通过将数据包切分为基础数据包和扩展数据包,使得设备可以在不同时段分次下载数据,简化了设备更新流程且缩短了其更新时间,还减轻了云端服务器的工作压力。
附图说明
图1示出了本方法的流程图。
具体实施方式
以下结合附图和实施例对本发明作进一步的说明。
请参照图1,本发明的实施例提供了一种云端程序及数据配套更新的方法,其包括以下步骤:
步骤1:获取历史数据包,并对新版本程序与各历史数据包逐一进行匹配测试;
步骤2:提取测试结果为兼容的历史数据包,并将其合并为一兼容数据包;
步骤3:将新版本程序与所述兼容数据包绑定,进行预发布,并在终端设备对所述绑定后的新版本程序与兼容数据包进行整体测试;
步骤4:测试通过后,将所述兼容数据包切分为基础数据包和扩展数据包,将所述新版本程序与基础数据包进行封装打包为基础包,将所述扩展数据包封装打包为扩展包,并正式发布;
步骤5:接收更新请求,向请求端设备传输所述基础包和扩展包;
步骤6:请求端设备下载所述基础包和扩展包,以完成配套更新。
本发明的实施例所提供的更新方法,通过采用新版本程序先与历史数据进行匹配测试,筛选出兼容新版本程序的数据内容,随后将兼容的各版本数据内容合并后与该新版本程序进行绑定,并进行整体测试,以完成前期的测试匹配步骤,避免了现有技术中需要使用新版本程序与最新数据以及各版本数据均进行整体测试的繁琐步骤,使得新版的数据不断地由旧版数据整合更新而来,而新版本的程序除了能够匹配最新的数据外,还能够匹配大部分旧有的数据。此外,本发明的实施例中,还对设备的更新方式作了改进,通过将数据包切分为基础数据包和扩展数据包,使得设备可以在不同时段分次下载数据,简化了设备更新流程且缩短了其更新时间,还减轻了云端服务器的工作压力。
在本实施例中,对所述兼容数据包进行切分的依据在于数据文件的创建时间;若数据文件的创建时间在上一版本程序的创建时间之前,则被切分为基础数据包;若数据文件的创建时间在上一版本程序的创建时间之后,则被切分为扩展数据包。这样定义的依据在于,上一版本程序创建前就存在的数据被认为相对稳定,是与新程序的匹配性较好的基础数据。
优选的,所述请求端设备选择在闲时下载所述扩展包。所述的“闲时”可以设备系统时间或设备网络状态定义。
进一步的,本实施例在步骤6后还包括步骤7:将所述基础数据包和扩展数包据合并为完整数据包,对其进行版本编号,并存入服务器内的第一数据库;对所述基础数据包和扩展数据包分别进行版本编号,且版本编号相同,并存入服务器内的第二数据库和第三数据库。这样一来,完善了对后续数据包的管理。
一实施例中,步骤1中的所述的历史数据包为各历史版本的完整数据包。而在本实施例中,步骤1中的所述的历史数据包为各历史版本的基础数据包。对应的,在所述步骤2中,所提取的测试结果为兼容的历史数据包为基础数据包,并获取最新版本的扩展数据包,将所述各测试结果为兼容的基础数据包与最新版本的扩展数据包合并,获得所述兼容数据包。因此,在本实施例中,较为优选的是,在匹配测试时,使用基础数据包与新版本程序进行测试,测试成功缩短了测试所需的耗时,简化了工作量。
可选择的,本实施例中,所述步骤2中匹配测试的方法可为白盒测试或黑盒测试。
以上所述仅为本发明的优选实施例,并非因此限制其专利范围,凡是利用本发明说明书及附图内容所作的等效结构变换,直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。