CN111142924A - 一种基于Bsdiff方法的应用增量更新方法 - Google Patents

一种基于Bsdiff方法的应用增量更新方法 Download PDF

Info

Publication number
CN111142924A
CN111142924A CN202010070639.2A CN202010070639A CN111142924A CN 111142924 A CN111142924 A CN 111142924A CN 202010070639 A CN202010070639 A CN 202010070639A CN 111142924 A CN111142924 A CN 111142924A
Authority
CN
China
Prior art keywords
file
package
differential
newly added
files
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.)
Granted
Application number
CN202010070639.2A
Other languages
English (en)
Other versions
CN111142924B (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.)
Jiangsu Aijia Household Products Co Ltd
Original Assignee
Jiangsu Aijia Household Products 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 Jiangsu Aijia Household Products Co Ltd filed Critical Jiangsu Aijia Household Products Co Ltd
Priority to CN202010070639.2A priority Critical patent/CN111142924B/zh
Publication of CN111142924A publication Critical patent/CN111142924A/zh
Application granted granted Critical
Publication of CN111142924B publication Critical patent/CN111142924B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

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

Abstract

本发明涉及一种基于Bsdiff方法的应用增量更新方法,基于目标应用中的文件信息与应用服务器所发布升级包中的文件信息进行对比,针对各新增文件、各修改文件,以及其分别在升级包中的存储路径,基于Bsdiff方法构建差分增量包,然后根据目标应用各新增文件与各修改文件的重要性、以及用户所设置差分增量包的发布权重值阈值,判断差分增量包是否需要发布,同时利用自动化测试工具对修改功能进行自动测试验证,测试用例通过之后则进入打包发布阶段,实现对目标应用的增量更新,提高目标应用更新的工作效率。

Description

一种基于Bsdiff方法的应用增量更新方法
技术领域
本发明涉及一种基于Bsdiff方法的应用增量更新方法,属于应用增量升级技术领域。
背景技术
随着网络和计算机技术的发展,现有软件***可以通过网络直接进行远程更新,且现有技术软件的更新都是通过增量式的更新,但是软件的增量打包发布更新,通常是软件***提供方根据需求或者功能漏洞修复需要,进行的增量打包更新,未考虑用户对软件的需求,因此实际应用中,软件更新效率较低。
发明内容
本发明所要解决的技术问题是提供一种基于Bsdiff方法的应用增量更新方法,基于升级差分信息,结合用户对目标应用升级与否的个性化设定,提高目标应用更新的工作效率。
本发明为了解决上述技术问题采用以下技术方案:本发明设计了一种基于Bsdiff方法的应用增量更新方法,用于针对目标应用实现增量升级,包括如下步骤:
步骤A.根据目标应用中的文件存储关系,针对目标应用中的文件信息与应用服务器所发布升级包中的文件信息进行对比,获得相对目标应用的各新增文件与各修改文件,并结合各新增文件、各修改文件分别在升级包中的存储路径,基于Bsdiff方法构建差分增量包,然后进入步骤B;
步骤B.针对差分增量包,根据差分增量包中新增文件的数量AddNum,差分增量包中新增文件与修改文件的总数量FileNum,获得差分增量包所对应的修改权重值β,然后进入步骤C;
步骤C.分别针对差分增量包中包括新增文件与修改文件的各个文件,获得文件所对应的应用影响权重
Figure BDA0002377208630000012
然后进入步骤D;
步骤D.分别针对差分增量包中包括新增文件与修改文件的各个文件,获得文件所对应的参数ChangRate;并进一步获得该文件所对应的参数τ;待完成对差分增量包中包括新增文件与修改文件的各个文件上述操作后,进入步骤E;
步骤E.分别针对差分增量包中包括新增文件与修改文件的各个文件,按文件所对应参数τ与其所对应应用影响权重
Figure BDA0002377208630000011
之间的乘积,获得该文件的权重;然后进入步骤F;
步骤F.根据差分增量包中包括新增文件与修改文件的各个文件的权重,获得差分增量包所对应的RateValue,然后进入步骤G;
步骤G.判断差分增量包所对应的RateValue是否不小于预设阈值α,是则发布该差分增量包,根据其中各新增文件、各修改文件分别在升级包中的存储路径,由升级包中调用相应各文件、对目标应用进行升级;否则不做任何进一步操作。
作为本发明的一种优选技术方案:所述步骤G中,当差分增量包所对应的RateValue不小于预设阈值α时,根据差分增量包中修改功能的测试用例,应用指定自动测试工具针对差分增量包中的修改功能进行测试,若测试通过,则发布该差分增量包,根据其中各新增文件、各修改文件分别在升级包中的存储路径,由升级包中调用相应各文件、对目标应用进行升级;若测试不通过,则不做任何进一步操作。
作为本发明的一种优选技术方案:所述步骤B中,针对差分增量包,根据差分增量包中新增文件的数量AddNum,差分增量包中新增文件与修改文件的总数量FileNum,按如下公式:
Figure BDA0002377208630000021
获得差分增量包所对应的修改权重值β。
作为本发明的一种优选技术方案:所述步骤C中,分别针对差分增量包中包括新增文件与修改文件的各个文件,按如下公式:
Figure BDA0002377208630000022
获得文件所对应的应用影响权重
Figure BDA0002377208630000023
其中,ConnectValue表示文件相对目标应用中其它文件的关联度,FileValue表示文件依据预设模块功能划分所对应权重划分范围下的随机值权重。
作为本发明的一种优选技术方案:若所述文件依据预设模块功能划分、属于应用核心范围模块或新增功能模块,则该文件的权重大于0.7;此外该文件的权重小于0.3。
作为本发明的一种优选技术方案:所述步骤D中,分别针对差分增量包中包括新增文件与修改文件的各个文件,按如下公式:
ChangRate=(DEffect+IndEffect)/(DEffect+IndEffect+NEffect)
获得文件所对应的参数ChangRate;其中,NEffect表示文件对目标应用中不产生影响的其它文件的数量,DEffect表示文件对目标应用中产生直接影响的其它文件的数量,IndEffect表示文件对目标应用中产生间接影响的其它文件的数量;
然后进一步按如下公式:
τ=FileValue*ChangeRate
获得该文件所对应的参数τ;待完成对差分增量包中包括新增文件与修改文件的各个文件上述操作后,进入步骤E。
作为本发明的一种优选技术方案:所述步骤F中,按如下公式:
Figure BDA0002377208630000031
获得差分增量包所对应的RateValue,其中,1≤I≤AddNum,1≤i≤I,ρi表示差分增量包中第i个新增文件的权重,1≤J≤FileNum-AddNum,1≤j≤J,σj表示差分增量包中第j个修改文件的权重。
本发明所述一种基于Bsdiff方法的应用增量更新方法,采用以上技术方案与现有技术相比,具有以下技术效果:
本发明所设计基于Bsdiff方法的应用增量更新方法,基于目标应用中的文件信息与应用服务器所发布升级包中的文件信息进行对比,针对各新增文件、各修改文件,以及其分别在升级包中的存储路径,基于Bsdiff方法构建差分增量包,然后根据目标应用各新增文件与各修改文件的重要性、以及用户所设置差分增量包的发布权重值阈值,判断差分增量包是否需要发布,同时利用自动化测试工具对修改功能进行自动测试验证,测试用例通过之后则进入打包发布阶段,实现对目标应用的增量更新,提高目标应用更新的工作效率。
附图说明
图1为本发明设计基于Bsdiff方法的应用增量更新方法的流程示意图。
具体实施方式
下面结合说明书附图对本发明的具体实施方式作进一步详细的说明。
本发明设计了一种基于Bsdiff方法的应用增量更新方法,用于针对目标应用实现增量升级,实际应用当中,如图1所示,具体包括如下步骤A至步骤G。
步骤A.根据目标应用中的文件存储关系,针对目标应用中的文件信息与应用服务器所发布升级包中的文件信息进行对比,获得相对目标应用的各新增文件与各修改文件,并结合各新增文件、各修改文件分别在升级包中的存储路径,基于Bsdiff方法构建差分增量包,然后进入步骤B。
差分增量包中针对各文件分别定义type、path、name,其中,type代表文件的类型,取值为0、1,其中,0代表文件为新增文件,1代表文件为修改文件;path代表文件在升级包中的存储路径,name代表文件的文件名。
步骤B.针对差分增量包,根据差分增量包中新增文件的数量AddNum,差分增量包中新增文件与修改文件的总数量FileNum,按如下公式:
Figure BDA0002377208630000041
获得差分增量包所对应的修改权重值β,然后进入步骤C。实际应用中,当β值越大说明新增文件的数量越多,说明此差分增量包进行自动打包的权重越高。
步骤C.分别针对差分增量包中包括新增文件与修改文件的各个文件,按如下公式:
Figure BDA0002377208630000042
获得文件所对应的应用影响权重
Figure BDA0002377208630000043
然后进入步骤D;其中,ConnectValue表示文件相对目标应用中其它文件的关联度,FileValue表示文件依据预设模块功能划分所对应权重划分范围下的随机值权重,实际应用中,所述文件依据预设模块功能划分、属于应用核心范围模块或新增功能模块,则该文件的权重FileValue大于0.7;此外该文件的权重FileValue小于0.3。
步骤D.分别针对差分增量包中包括新增文件与修改文件的各个文件,按如下公式:
ChangRate=(DEffect+IndEffect)/(DEffect+IndEffect+NEffect)
获得文件所对应的参数ChangRate;其中,NEffect表示文件对目标应用中不产生影响的其它文件的数量,DEffect表示文件对目标应用中产生直接影响的其它文件的数量,IndEffect表示文件对目标应用中产生间接影响的其它文件的数量;
然后进一步按如下公式:
τ=FileValue*ChangeRate
获得该文件所对应的参数τ;待完成对差分增量包中包括新增文件与修改文件的各个文件上述操作后,进入步骤E。
步骤E.分别针对差分增量包中包括新增文件与修改文件的各个文件,按文件所对应参数τ与其所对应应用影响权重
Figure BDA0002377208630000051
之间的乘积,获得该文件的权重;然后进入步骤F。
步骤F.按如下公式:
Figure BDA0002377208630000052
获得差分增量包所对应的RateValue,其中,1≤I≤AddNum,1≤i≤I,ρi表示差分增量包中第i个新增文件的权重,1≤J≤FileNum-AddNum,1≤j≤J,σj表示差分增量包中第j个修改文件的权重,然后进入步骤G。
步骤G.判断差分增量包所对应的RateValue是否不小于预设阈值α,是则进入步骤H;否则不做任何进一步操作。
步骤H.根据差分增量包中修改功能的测试用例,应用指定自动测试工具针对差分增量包中的修改功能进行测试,若测试通过,则发布该差分增量包,根据其中各新增文件、各修改文件分别在升级包中的存储路径,由升级包中调用相应各文件、对目标应用进行升级;若测试不通过,则不做任何进一步操作。
本发明所设计基于Bsdiff方法的应用增量更新方法在实际应用当中,基于目标应用中的文件信息与应用服务器所发布升级包中的文件信息进行对比,针对各新增文件、各修改文件,以及其分别在升级包中的存储路径,基于Bsdiff方法构建差分增量包,然后根据目标应用各新增文件与各修改文件的重要性、以及用户所设置差分增量包的发布权重值阈值,判断差分增量包是否需要发布,同时利用自动化测试工具对修改功能进行自动测试验证,测试用例通过之后则进入打包发布阶段,实现对目标应用的增量更新,提高目标应用更新的工作效率。
上面结合附图对本发明的实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。

Claims (7)

1.一种基于Bsdiff方法的应用增量更新方法,用于针对目标应用实现增量升级,其特征在于,包括如下步骤:
步骤A.根据目标应用中的文件存储关系,针对目标应用中的文件信息与应用服务器所发布升级包中的文件信息进行对比,获得相对目标应用的各新增文件与各修改文件,并结合各新增文件、各修改文件分别在升级包中的存储路径,基于Bsdiff方法构建差分增量包,然后进入步骤B;
步骤B.针对差分增量包,根据差分增量包中新增文件的数量AddNum,差分增量包中新增文件与修改文件的总数量FileNum,获得差分增量包所对应的修改权重值β,然后进入步骤C;
步骤C.分别针对差分增量包中包括新增文件与修改文件的各个文件,获得文件所对应的应用影响权重
Figure FDA0002377208620000011
然后进入步骤D;
步骤D.分别针对差分增量包中包括新增文件与修改文件的各个文件,获得文件所对应的参数ChangRate;并进一步获得该文件所对应的参数τ;待完成对差分增量包中包括新增文件与修改文件的各个文件上述操作后,进入步骤E;
步骤E.分别针对差分增量包中包括新增文件与修改文件的各个文件,按文件所对应参数τ与其所对应应用影响权重
Figure FDA0002377208620000012
之间的乘积,获得该文件的权重;然后进入步骤F;
步骤F.根据差分增量包中包括新增文件与修改文件的各个文件的权重,获得差分增量包所对应的RateValue,然后进入步骤G;
步骤G.判断差分增量包所对应的RateValue是否不小于预设阈值α,是则发布该差分增量包,根据其中各新增文件、各修改文件分别在升级包中的存储路径,由升级包中调用相应各文件、对目标应用进行升级;否则不做任何进一步操作。
2.根据权利要求1所述一种基于Bsdiff方法的应用增量更新方法,其特征在于:在一个实施方式中,所述步骤G中,当差分增量包所对应的RateValue不小于预设阈值α时,根据差分增量包中修改功能的测试用例,应用指定自动测试工具针对差分增量包中的修改功能进行测试,若测试通过,则发布该差分增量包,根据其中各新增文件、各修改文件分别在升级包中的存储路径,由升级包中调用相应各文件、对目标应用进行升级;若测试不通过,则不做任何进一步操作。
3.根据权利要求1或2所述一种基于Bsdiff方法的应用增量更新方法,其特征在于:在一个实施方式中,所述步骤B中,针对差分增量包,根据差分增量包中新增文件的数量AddNum,差分增量包中新增文件与修改文件的总数量FileNum,按如下公式:
Figure FDA0002377208620000021
获得差分增量包所对应的修改权重值β。
4.根据权利要求3所述一种基于Bsdiff方法的应用增量更新方法,其特征在于:在一个实施方式中,所述步骤C中,分别针对差分增量包中包括新增文件与修改文件的各个文件,按如下公式:
Figure FDA0002377208620000022
获得文件所对应的应用影响权重
Figure FDA0002377208620000023
其中,ConnectValue表示文件相对目标应用中其它文件的关联度,FileValue表示文件依据预设模块功能划分所对应权重划分范围下的随机值权重。
5.根据权利要求4所述一种基于Bsdiff方法的应用增量更新方法,其特征在于:在一个实施方式中,若所述文件依据预设模块功能划分、属于应用核心范围模块或新增功能模块,则该文件的权重大于0.7;此外该文件的权重小于0.3。
6.根据权利要求4所述一种基于Bsdiff方法的应用增量更新方法,其特征在于:在一个实施方式中,所述步骤D中,分别针对差分增量包中包括新增文件与修改文件的各个文件,按如下公式:
ChangRate=(DEffect+IndEffect)/(DEffect+IndEffect+NEffect)
获得文件所对应的参数ChangRate;其中,NEffect表示文件对目标应用中不产生影响的其它文件的数量,DEffect表示文件对目标应用中产生直接影响的其它文件的数量,IndEffect表示文件对目标应用中产生间接影响的其它文件的数量;
然后进一步按如下公式:
τ=FileValue*ChangeRate
获得该文件所对应的参数τ;待完成对差分增量包中包括新增文件与修改文件的各个文件上述操作后,进入步骤E。
7.根据权利要求6所述一种基于Bsdiff方法的应用增量更新方法,其特征在于:在一个实施方式中,所述步骤F中,按如下公式:
Figure FDA0002377208620000031
获得差分增量包所对应的RateValue,其中,1≤I≤AddNum,1≤i≤I,ρi表示差分增量包中第i个新增文件的权重,1≤J≤FileNum-AddNum,1≤j≤J,σj表示差分增量包中第j个修改文件的权重。
CN202010070639.2A 2020-01-21 2020-01-21 一种基于Bsdiff方法的应用增量更新方法 Active CN111142924B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010070639.2A CN111142924B (zh) 2020-01-21 2020-01-21 一种基于Bsdiff方法的应用增量更新方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010070639.2A CN111142924B (zh) 2020-01-21 2020-01-21 一种基于Bsdiff方法的应用增量更新方法

Publications (2)

Publication Number Publication Date
CN111142924A true CN111142924A (zh) 2020-05-12
CN111142924B CN111142924B (zh) 2022-08-12

Family

ID=70526675

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010070639.2A Active CN111142924B (zh) 2020-01-21 2020-01-21 一种基于Bsdiff方法的应用增量更新方法

Country Status (1)

Country Link
CN (1) CN111142924B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103713928A (zh) * 2013-12-31 2014-04-09 优视科技有限公司 增量文件生成方法、应用程序安装文件更新方法及装置
WO2015074467A1 (zh) * 2013-11-25 2015-05-28 腾讯科技(深圳)有限公司 一种数据更新方法、装置、***及存储介质
CN106909404A (zh) * 2015-12-22 2017-06-30 博雅网络游戏开发(深圳)有限公司 软件更新方法和***

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015074467A1 (zh) * 2013-11-25 2015-05-28 腾讯科技(深圳)有限公司 一种数据更新方法、装置、***及存储介质
CN103713928A (zh) * 2013-12-31 2014-04-09 优视科技有限公司 增量文件生成方法、应用程序安装文件更新方法及装置
CN106909404A (zh) * 2015-12-22 2017-06-30 博雅网络游戏开发(深圳)有限公司 软件更新方法和***

Also Published As

Publication number Publication date
CN111142924B (zh) 2022-08-12

Similar Documents

Publication Publication Date Title
CN108491321B (zh) 测试用例范围确定方法、装置及存储介质
US20100031206A1 (en) Method and technique for analogue circuit synthesis
CN104102511A (zh) 一种基于SQL Server的脚本自动升级***及方法
CN111399828B (zh) 一种基于模型驱动的逻辑设备建模方法及终端
CN113868120A (zh) 工业软件调试方法、装置、计算机设备和存储介质
CN111142924B (zh) 一种基于Bsdiff方法的应用增量更新方法
CN113987283A (zh) 资费配置的校验方法、装置、设备及存储介质
US6957178B2 (en) Incremental automata verification
CN115858884A (zh) 一种日志校验方法、装置和产品
CN111427582A (zh) Rtl代码的管理方法、装置、设备及计算机可读存储介质
CN115828803A (zh) 网表缩减方法、芯片验证方法及计算机存储介质
WO2005059744A1 (en) A method of automatically generating test scripts from a system specification model
CN112256978B (zh) 一种基于数据模型的数据处理方法、装置、介质
CN115495363A (zh) 一种软件测试方法、电子设备及可读存储介质
CN112749903A (zh) 汽车压力传感器的智能装配生产线仿真方法及***
CN113342647A (zh) 一种测试数据的生成方法及装置
CN112307589A (zh) 单位工况创建方法、装置、电子设备及存储介质
CN106143353B (zh) 一种车载电子控制单元模块刷新方法及***
CN113377672B (zh) 测试方法、装置及设备
CN114462339B (zh) 用于回归测试的参数调优、文件建立方法及其装置
CN117574817B (zh) 自适应时序变化的设计自动化验证方法、***及验证平台
KR100445662B1 (ko) 마스터 패턴 설계 시스템 및 그 방법
CN113010424B (zh) 接口自动化测试处理方法、***、计算机设备与存储介质
CN117130942B (zh) 一种模拟国产化生产环境的仿真测试方法
CN113568662B (zh) 一种基于调用关系的代码变更影响范围分析方法及***

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 211100 floor 5, block a, China Merchants high speed rail Plaza project, No. 9, Jiangnan Road, Jiangning District, Nanjing, Jiangsu (South Station area)

Applicant after: JIANGSU AIJIA HOUSEHOLD PRODUCTS Co.,Ltd.

Address before: 211100 No. 18 Zhilan Road, Science Park, Jiangning District, Nanjing City, Jiangsu Province

Applicant before: JIANGSU AIJIA HOUSEHOLD PRODUCTS Co.,Ltd.

GR01 Patent grant
GR01 Patent grant