CN109446057B - 基于gde3算法的动态系统测试资源分配方法 - Google Patents

基于gde3算法的动态系统测试资源分配方法 Download PDF

Info

Publication number
CN109446057B
CN109446057B CN201811063043.9A CN201811063043A CN109446057B CN 109446057 B CN109446057 B CN 109446057B CN 201811063043 A CN201811063043 A CN 201811063043A CN 109446057 B CN109446057 B CN 109446057B
Authority
CN
China
Prior art keywords
test
software
module
subsystem
reliability
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
CN201811063043.9A
Other languages
English (en)
Other versions
CN109446057A (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.)
Hefei University of Technology
Original Assignee
Hefei University of Technology
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 Hefei University of Technology filed Critical Hefei University of Technology
Priority to CN201811063043.9A priority Critical patent/CN109446057B/zh
Publication of CN109446057A publication Critical patent/CN109446057A/zh
Application granted granted Critical
Publication of CN109446057B publication Critical patent/CN109446057B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

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

Abstract

本发明实施例公开一种基于GDE3算法的动态系统测试资源分配方法,包括:确定多目标函数的优化模型;软件测试的过程中,根据客户要求发生变化,对软件系统功能进行更改,变化软件系统的结构;根据变化后的软件系统的结构,调整由所述多目标函数的优化模型得到的测试方案,使变化后的软件系统新加入的模块分配到测试资源。本发明实施例提供的基于GDE3算法的动态系统测试资源分配方法,实现调整资源的分配,使之能够适应于变化后的系统,在测试资源受约束的情况下,最大化软件可靠性、最小化成本以及测试资源。

Description

基于GDE3算法的动态系统测试资源分配方法
技术领域
本发明涉及计算机领域,尤其涉及一种基于GDE3算法的动态系统测试资源分配方法。
背景技术
检测测试软件错误和发现纠正缺陷,提高软件的质量、可靠性、适用性是软件测试的主要任务。而软件测试是软件开发过程不可缺少的一环,也是消耗资源最多的部分,约占软件开发资源的一半。随着软件的复杂度提升、规模变大,软件测试变得尤为重要。测试阶段中分配有限的测试资源,使其最大化系统的可靠性是我们研究的问题,也就是测试资源分配问题(OTRAPs)。
测试资源分配方案涉及单目标优化问题,例如测试资源一定时,使软件可靠性最大化;另外在满足可靠性的前提下,最小化测试资源。软件功能结构的复杂度越来越高以及考虑的问题越来越多,单目标优化问题越发难以适应软件测试资源优化问题,也有通过某些方法将多目标问题转化为单目标问题进行计算,本质都是单目标优化问题。随后,搜索算法不断发展,可以很好的适应多目标问题,同样也适应软件测试资源分配问题。在这部分的研究中,在给定约束的测试资源,最大化测试资源、最小化成本和测试资源。
在上述研究中,软件系统的模型都是不变的。而在实际软件测试的过程中客户的要求是经常变动的,相对应的软件系统的结构也会发生相应的变化,适应于静态软件系统测试分配方案不在适应新系统。但是在已经消耗一定的测试资源情况下,重新制定测试资源分配方案,会给软件测试带来很大的资源消耗。
发明内容
本发明实施例提供一种基于GDE3算法的动态系统测试资源分配方法,能够调整资源的分配,使之能够适应于变化后的系统,在测试资源受约束的情况下,最大化软件可靠性、最小化成本以及测试资源。
本发明实施例采用如下技术方案:
一种基于GDE3算法的动态系统测试资源分配方法,包括:
确定多目标函数的优化模型;
软件测试的过程中,根据客户要求发生变化,对软件系统功能进行更改,变化软件系统的结构;
根据变化后的软件系统的结构,调整由所述多目标函数的优化模型得到的测试方案,使变化后的软件系统新加入的模块分配到测试资源。
本发明实施例提供的基于GDE3算法的动态系统测试资源分配方法,确定多目标函数的优化模型,软件测试的过程中,根据客户要求发生变化,对软件系统功能进行更改,变化软件系统的结构,根据变化后的软件系统的结构,调整由所述多目标函数的优化模型得到的测试方案,使变化后的软件系统新加入的模块分配到测试资源。从而实现调整资源的分配,使之能够适应于变化后的系统,在测试资源受约束的情况下,最大化软件可靠性、最小化成本以及测试资源。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1为本发明实施例示出的基于GDE3算法的动态系统测试资源分配方法的流程图之一。
图2为本发明实施例示出的软件结构变化示意图之一。
图3为本发明实施例示出的软件结构变化示意图之二。
图4为本发明实施例示出的软件系统示意图之一。
图5为本发明实施例示出的算法流程示意图。
图6为本发明实施例示出的编码示意图。
图7a至图7d为本发明实施例示出的系统结构变化示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
本发明实施例提供一种基于GDE3算法的动态系统测试资源分配方法,对于软件测试资源分配问题,首先我们选取最为流行的软件串并联系统,以及测试资源的类型。详见具体实施例。其次我们需要介绍优化的目标:实际消耗的测试资源、成本以及软件的可靠性,这些目标函数的计算方法详见具体实施例。本发明实施例提供的优化模型,提供的算法需要对该优化模型进行计算,以最终获得最优解集。本发明实施例采用GDE3算法。
本发明实施例整个测试资源分配的策略为:将测试资源,随机的分配给软件系统的模块作为一个个体的初始化,以相同的方式产生一个种群,利用GDE3算法优化优化模型,获得最优种群;出现的问题出现,应用资源分配方案来解决新模块或子系统的初始化,然后再利用GDE3算法获得适合变化后系统的种群(解集)。
本发明实施例提供一种基于GDE3算法的动态系统测试资源分配方法,如图1所示,包括:
11、确定多目标函数的优化模型;
12、软件测试的过程中,根据客户要求发生变化,对软件系统功能进行更改,变化软件系统的结构;
13、根据变化后的软件系统的结构,调整由所述多目标函数的优化模型得到的测试方案,使变化后的软件系统新加入的模块分配到测试资源。
本发明实施例提供的基于GDE3算法的动态系统测试资源分配方法,确定多目标函数的优化模型,软件测试的过程中,根据客户要求发生变化,对软件系统功能进行更改,变化软件系统的结构,根据变化后的软件系统的结构,调整由所述多目标函数的优化模型得到的测试方案,使变化后的软件系统新加入的模块分配到测试资源。从而实现调整资源的分配,使之能够适应于变化后的系统,在测试资源受约束的情况下,最大化软件可靠性、最小化成本以及测试资源。
本发明实施例中,软件功能变化,软件系统的结构也相应的变化。如图2表示客户的要求变化后,会有若干个模块或者子系统加入到原来的系统中,相对应的软件系统编码结构也发生了变化如图3。
本发明实施例,在给加入的模块分配好初步的测试资源,然后再利用GDE3算法再调整完历史解的情况下,继续多目标模型进行优化,从而适应变化后的软件系统。
在软件测试的过程中,客户要求发生变化,软件系统功能进行更改,软件系统的结构也发生变化。原来根据多目标优化模型制定的测试方案不再适应变化后的软件系统。然而软件测试中又消耗了一定量的测试资源,重新对多目标模型计算分配方案会导致资源的浪费。本发明实施例在原来的测试方案进行调整,使新加入的模块分配到合理的测试资源。在一个实施例中,所述根据变化后的软件系统的结构,调整由所述多目标函数的优化模型得到的测试方案,使变化后的软件系统新加入的模块分配到测试资源包括:
模块的测试资源重新分配:新的模块一般以并行的形式加入在系统中,其新模块的作用为了增强子系统的可靠性,同时也增加了测试。为了使新模块分配到的测试资源不至于过大导致总的测试资源超出阈值,又符合遗传算法中的随机特点。
在一个实施例中,新的模块以并行的形式加入在系统中,将新加入的模块测试资源上界定为原来分配方案子系统消耗的测试资源,新模块的加入势必会引起同子系统中其他模块的变化,分配方法如下:
Figure GDA0003174701150000051
Figure GDA0003174701150000052
其中rand(0,1)表示0~1之间的随机数,location表示新模块添加到的位置,tlocation表示该位置上的每一个模块的测试资源,Timeofsubsystem[location]表示该子系统总的测试资源。
在一个实施例中,所述根据变化后的软件系统的结构,调整由所述多目标函数的优化模型得到的测试方案,使变化后的软件系统新加入的模块分配到测试资源包括:
子系统测试资源重新分配:软件系统中子系统以串联的形式存在,子系统的增加相应的软件的可靠性相对未改变之前有所降低在不影响其他子系统的情况下,分配好的测试资源总量不超过阈值,给新添加的子系统分配测试资源,分配方法将新添加子系统的上界设置为剩余的测试资源如下:
Figure GDA0003174701150000053
Figure GDA0003174701150000054
其中
Figure GDA0003174701150000055
表示新子系统的模块分配到的测试资源。
在一个实施例中,确定多目标函数的优化模型包括:
将多目标模型的测试资源计算、多目标模型的可靠性计算和多目标模型的成本计算作为多目标函数的优化模型,我们优化的目标是可靠性最高,成本最低,资源消耗最少,其中R、C、T分别表示可靠性、消耗的成本以及实际消耗的测试资源;T*测试资源阈值,tji为每个模块消耗的测试资源,m表示子系统的个数,nj表示第j个子系统包含的模块数,并且而该优化模型也是用来比较不同方案之间优劣的标准为:
Figure GDA0003174701150000061
在一个实施例中,多目标模型的测试资源计算包括:
每一个模块分配测试资源为tji,软件系统消耗的测试资源为:
Figure GDA0003174701150000062
在一个实施例中,多目标模型的可靠性计算包括:
利用软件可靠性增长模型描述了测试资源和可靠性之间的关系,模块Mjk的错误密度函数
Figure GDA0003174701150000063
可以被表示为:
Figure GDA0003174701150000064
其中aji表示Mji模块的错误数的平均值,bji为在Mji模块中检测到的错误率。从而可以计算出Mji模块可靠性为:
Figure GDA0003174701150000065
其中λ≥0,λ表示软件能够工作的时间即测试软件执行任务时间;
子系统Sj是由nj个子模块并联组成的,当模块都不工作,该子系统寿命结束,可以根据Mji模块的可靠性求出子系统Sj的可靠性;
Figure GDA0003174701150000071
同样软件测试系统是m个子系统串联组成的,当其中一个子系统出现故障时,整个软件系统出现故障,软件系统的可靠性计算:
Figure GDA0003174701150000072
在一个实施例中,多目标模型的成本计算包括:
模块Mji的测试成本与该模块的可靠性rij有关系,可靠性越高,成本也就越高,将模块Mji成本写成:
Figure GDA0003174701150000073
软件测试系统的成本就可以计算出来:
Figure GDA0003174701150000074
在一个实施例中,确定多目标函数的优化模型之前包括:
选用最能拟合现实软件系统的串并联软件系统,一个大规模复杂串并联软件系统包括m个子系统,S1,…,Sj,…,Sm,每个子系统Sj包含nj个并行模块
Figure GDA0003174701150000075
其中,m∈¥,j∈{1,…,m},nj∈¥,如图4。
在软件测试中,可有的测试资源包括人员、CPU时间、可测试实例,根据每个测试人员的工作时间计算出可用的总测试时间的阈值T*,例如有10个人参与测试,每个人都有1000个小时的时间用在测试任务中,T*=10·1000=10000。
在一个实施例中,确定多目标函数的优化模型包括:
应用第三代差分进化算法GDE3对多目标函数的优化模型进行优化。
第三代差分进化算法(GDE3)以及编码方式,GDE3算法的基本流程如图5所示。根据阈值初始化种群,该种群为父代种群,并且计算每个个体适应度(目标函数);从父代种群中选出进行交叉和变异的个体,从而产生过渡种群,对过渡种群进行非支配排序操作得到过渡种群的支配层级;
计算每个层级的拥挤距离;
根据支配层级以及拥挤距离的大小选出与父代种群相同的子代种群,不断的迭代到设置的代次数停止。本文采用以为编码结构,一维实数编码比较简单、容易理解,并且适用于OTRAPs的划分特征,能够为以后问题的解决提供方便,同时也能够提高设计算法的性能空间。图6展示了一维实数编码,每部分表示子系统Sj的编码形式,每个元素代表模块Mjk的测试时间。
本发明实施例,新添加模块的测试资源分配是根据所在子系统的测试资源总量进行分配。该方法既不会影响其他子系统测试资源的变化,系统总消耗的测试资源不会超出阈值;还可以利用以前的分配方案,避免了重新计算分配方案。
本发明实施例,新添加的子系统测试资源分配是根据剩余测试资源(阈值与改变以前实际消耗测试资源的差值)进行分配的。避免了修改其他子系统的测试资源,相对于重新计算还可以加快收敛趋势。
本发明实施例提供的基于GDE3算法的动态系统测试资源分配方法,确定多目标函数的优化模型,软件测试的过程中,根据客户要求发生变化,对软件系统功能进行更改,变化软件系统的结构,根据变化后的软件系统的结构,调整由所述多目标函数的优化模型得到的测试方案,使变化后的软件系统新加入的模块分配到测试资源。从而实现调整资源的分配,使之能够适应于变化后的系统,在测试资源受约束的情况下,最大化软件可靠性、最小化成本以及测试资源。
本发明实施例,为了更为清楚的比较两种方案的优点,将模块的测试资源重新分配和子系统的测试资源重新分配分别与重新计算(静态)得到的方案比较。在比较之前我们需要进行参数的设置以及性能指标。
参数设置和性能指标。这里对四个不同的串并联软件系统进行分析,他们分别包括:5个子系统10个模块、6个子系统14个模块、7个子系统20模块和11子系统30个模块。如图7a至图7d所示,其中图7a为简单系统、图7b为复杂系统、图7c为大型系统、图7d为超大型系统,其中标注虚线的模块和子系统都是新添加的,利用这四个串并联软件系统模型进行实验。每个模块计算可靠性、成本的参数是根据以往的研究设置的,如表1:
表1
Figure GDA0003174701150000091
算法的基本参数如表2:
表2
Figure GDA0003174701150000092
实验结果数据的比较采用经典的覆盖度量。假设有利用不同测试资源分配方案的得到的解集A和B,A集合中元素a中任意一个目标值都不比B集合元素b中的差即为a覆盖b。ζ(A,B)表示在A中元素覆盖B中元素所占的百分比。ζ(A,B)>ζ(B,A)表示产生解集A的方案优于产生解集B的方案。另外用容量测度比较不同方案的优劣。容量测度为满足客户要求解的个数。此外还要比较这些解的覆盖度。
模块测试资源分配与静态比较。模块的动态策略实验方案是先对非虚线模块的串并系统图7a至图7d(不包括虚线的模块,包括虚线的子系统)进行前20%的迭代,然后加入新的模块(虚线的模块)完成后80%的迭代。静态策略是直接对串并系统图7a至图7d进行100%的迭代。计算的结果通过覆盖率度量比较,如表3、4。表格中的NG表示GDE3算法迭代的次数,PS表示种群的大小,加粗的字体代表数据较大,A对应着模块测试分配获得的解集,B对应着静态分配对应的解集。表3表示种群大小PS=250,迭代次数NG变化时,各个不同软件系统的标准覆盖率与置信区间为95%的标准误差值。表4表示迭代次数NG=250,种群大小变化时,各个不同软件系统的标准覆盖率与置信区间为95%的标准误差值。由表中数据可以得出模块测试资源分配方案与静态方案相比覆盖值之间相差不大。
表格3覆盖率的平均值与置信区间为95%的标准误差,PS=250
Figure GDA0003174701150000101
为了更好的比较实验结果,利用容量值测度,从两种策略的解集中选取可靠性大于0.9(R>0.9)的个体,比较满足容量测度的解之间的覆盖测度,如表5、6。由容量测度以及覆盖值上面,数据相差不大。综合之前的表格可以得出模块的测试资源分配策略很好的保持了静态策略的收敛趋势,可以获得与静态策略相当的解,因此模块的测试资源分配策略能够为新添加模块分配合理的测试资源,并且可避免重新计算以及浪费测试资源。
表格4覆盖率的平均值与置信区间为95%的标准误差NG=250
Figure GDA0003174701150000102
Figure GDA0003174701150000111
表格5大于0.9的容量值和覆盖率,NG=250
Figure GDA0003174701150000112
表格6大于0.9的容量值和覆盖率,PS=250
Figure GDA0003174701150000113
Figure GDA0003174701150000121
子系统测试资源分配与静态比较。类似于上一部分,子系统测试资源分配策略先对非虚线的串并系统图7a至图7d(包括虚线的模块,不包括虚线的子系统)进行前20%的迭代,然后加入新的子系统(虚线的子系统)完成后80%的迭代。由此可以得到表7、8,其中C对应着子系统测试资源分配策略。从表格中覆盖率数据可以获得,子系统测试资源分配策略覆盖率要高于静态策略覆盖率。
表格7覆盖率的平均值与置信区间为95%的标准误差值,PS=250
Figure GDA0003174701150000122
表格8覆盖率的平均值与置信区间为95%的标准误差值,NG=250
Figure GDA0003174701150000131
同时为了说明策略可以满足客户要求的解。选取可靠性大于0.9的解集来获得容量值,然后比较这些解的覆盖率表9、10,子系统测试资源分配策略相比于静态策略,在满足可靠性大于0.9的容量值具有较好的优势,同样在覆盖率上也有相同的趋势。之所以可以得到更好的结果是因为静态策略容易进入局部收敛的趋势,而新子系统分配测试资源的方式充分利用阈值以内的测试资源给测试系统分配资源,并且很好的打破局部收敛的趋势,得到全局最优解。
表格9大于0.9的容量值和覆盖率,PS=250
Figure GDA0003174701150000132
表格10大于0.9的容量值和覆盖率,NG=250
Figure GDA0003174701150000133
Figure GDA0003174701150000141
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。

Claims (8)

1.一种基于GDE3算法的动态系统测试资源分配方法,其特征在于,包括:
确定多目标函数的优化模型;
软件测试的过程中,根据客户要求发生变化,对软件系统功能进行更改,变化软件系统的结构;
根据变化后的软件系统的结构,调整由所述多目标函数的优化模型得到的测试方案,使变化后的软件系统新加入的模块分配到测试资源;
所述根据变化后的软件系统的结构,调整由所述多目标函数的优化模型得到的测试方案,使变化后的软件系统新加入的模块分配到测试资源包括:
新的模块以并行的形式加入在系统中,将新加入的模块测试资源上界定为原来分配方案子系统消耗的测试资源,新模块的加入势必会引起同子系统中其他模块的变化,分配方法如下:
Figure FDA0003174701140000011
Figure FDA0003174701140000012
其中rand(0,1)表示0~1之间的随机数,location表示新模块添加的位置,tlocation表示该位置上每一个模块的测试资源,Timeofsubsystem[location]表示该子系统总的测试资源;
所述根据变化后的软件系统的结构,调整由所述多目标函数的优化模型得到的测试方案,使变化后的软件系统新加入的模块分配到测试资源包括:
软件系统中子系统以串联的形式存在,子系统的增加相应的软件的可靠性相对未改变之前有所降低在不影响其他子系统的情况下,分配好的测试资源总量不超过阈值,给新添加的子系统分配测试资源,分配方法将新添加子系统的上界设置为剩余的测试资源如下:
Figure FDA0003174701140000021
Figure FDA0003174701140000022
其中
Figure FDA0003174701140000023
表示新子系统的模块分配到的测试资源;T*测试资源阈值。
2.根据权利要求1所述的方法,其特征在于,确定多目标函数的优化模型包括:
将多目标模型的测试资源计算、多目标模型的可靠性计算和多目标模型的成本计算作为多目标函数的优化模型,我们优化的目标是可靠性最高,成本最低,资源消耗最少,其中R、C、T分别表示可靠性、消耗的成本以及实际消耗的测试资源;T*测试资源阈值,tji为每个模块消耗的测试资源,m表示子系统的个数,nj表示第j个子系统包含的模块数,并且该优化模型也是用来比较不同方案之间优劣的标准为:
Figure FDA0003174701140000024
3.根据权利要求2所述的方法,其特征在于,多目标模型的测试资源计算包括:
每一个模块分配测试资源为tji,软件系统消耗的测试资源为:
Figure FDA0003174701140000031
4.根据权利要求2所述的方法,其特征在于,多目标模型的可靠性计算包括:
利用软件可靠性增长模型描述了测试资源和可靠性之间的关系,模块Mjk的错误密度函数
Figure FDA0003174701140000032
被表示为:
Figure FDA0003174701140000033
其中aji表示Mji模块的错误数的平均值,bji为在Mji模块中检测到的错误率,从而计算出Mji模块可靠性为:
Figure FDA0003174701140000034
其中λ≥0,λ表示软件能够工作的时间即测试软件执行任务时间;
子系统Sj是由nj个子模块并联组成的,当模块都不工作,该子系统寿命结束,根据Mji模块的可靠性求出子系统Sj的可靠性;
Figure FDA0003174701140000035
同样软件测试系统是m个子系统串联组成的,当其中一个子系统出现故障时,整个软件系统出现故障,软件系统的可靠性计算:
Figure FDA0003174701140000036
5.根据权利要求2所述的方法,其特征在于,多目标模型的成本计算包括:
模块Mji的测试成本与该模块的可靠性rij有关系,可靠性越高,成本也就越高,将模块Mji成本写成:
Figure FDA0003174701140000041
软件测试系统的成本就计算出来:
Figure FDA0003174701140000042
6.根据权利要求1至5中任一项所述的方法,其特征在于,确定多目标函数的优化模型之前包括:
选用最能拟合现实软件系统的串并联软件系统,一个大规模复杂串并联软件系统包括m个子系统,S1,…,Sj,…,Sm,每个子系统Sj包含nj个并行模块
Figure FDA0003174701140000043
其中,m∈¥,j∈{1,…,m},nj∈¥,在软件测试中,测试资源包括人员、CPU时间、可测试实例,根据每个测试人员的工作时间计算出可用的总测试时间的阈值T*
7.根据权利要求1所述的方法,其特征在于,确定多目标函数的优化模型包括:
应用第三代差分进化算法GDE3对多目标函数的优化模型进行优化。
8.根据权利要求7所述的方法,其特征在于,
第三代差分进化算法GDE3以及编码方式,GDE3算法根据阈值初始化种群,该种群为父代种群,并且计算每个个体适应度,即目标函数;从父代种群中选出进行交叉和变异的个体,从而产生过渡种群,对过渡种群进行非支配排序操作得到过渡种群的支配层级;
计算每个层级的拥挤距离;
根据支配层级以及拥挤距离的大小选出与父代种群相同的子代种群,不断的迭代到设置的代次数停止。
CN201811063043.9A 2018-09-12 2018-09-12 基于gde3算法的动态系统测试资源分配方法 Active CN109446057B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811063043.9A CN109446057B (zh) 2018-09-12 2018-09-12 基于gde3算法的动态系统测试资源分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811063043.9A CN109446057B (zh) 2018-09-12 2018-09-12 基于gde3算法的动态系统测试资源分配方法

Publications (2)

Publication Number Publication Date
CN109446057A CN109446057A (zh) 2019-03-08
CN109446057B true CN109446057B (zh) 2021-10-26

Family

ID=65530412

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811063043.9A Active CN109446057B (zh) 2018-09-12 2018-09-12 基于gde3算法的动态系统测试资源分配方法

Country Status (1)

Country Link
CN (1) CN109446057B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113806409A (zh) * 2020-05-28 2021-12-17 华为技术有限公司 一种数据配对的方法及其相关设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104899101A (zh) * 2015-06-10 2015-09-09 合肥工业大学 基于多目标差异演化算法的软件测试资源动态分配方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104899101A (zh) * 2015-06-10 2015-09-09 合肥工业大学 基于多目标差异演化算法的软件测试资源动态分配方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于模块软件系统的测试资源分配研究;杨平良;《机械设计与制造工程》;20131231;第42卷(第12期);第47-52页 *

Also Published As

Publication number Publication date
CN109446057A (zh) 2019-03-08

Similar Documents

Publication Publication Date Title
US10924535B2 (en) Resource load balancing control method and cluster scheduler
CN111124689B (zh) 一种集群中容器资源动态分配方法
Pires et al. Multi-objective virtual machine placement with service level agreement: A memetic algorithm approach
CN110704542A (zh) 一种基于节点负载的数据动态分区系统
US20070250630A1 (en) Method and a system of generating and evaluating potential resource allocations for an application
CN105912399B (zh) 一种任务处理方法、装置及系统
CN108416465B (zh) 一种移动云环境下的工作流优化方法
CN111682962B (zh) 一种电力数据网故障恢复方法、系统及存储介质
US8352215B2 (en) Computer-implemented distributed iteratively reweighted least squares system and method
CN105718364A (zh) 一种云计算平台中计算资源能力动态评估方法
US8478688B1 (en) Rapid transaction processing
US20130326028A1 (en) Server migration
CN110502323B (zh) 一种云计算任务实时调度方法
CN111314120A (zh) 基于迭代QoS模型的云软件服务资源自适应管理框架
US11042419B2 (en) Cooperative scheduling method and system for computing resource and network resource of container cloud platform
CN113449802A (zh) 基于多粒度互信息最大化的图分类方法及装置
CN109446057B (zh) 基于gde3算法的动态系统测试资源分配方法
CN113157421A (zh) 一种基于用户作业流程的分布式集群资源调度方法
CN114185767A (zh) Ab测试方法、装置及计算机可读存储介质
US20210217083A1 (en) Method and system for optimizing resource redistribution
CN109240927B (zh) 基于gde3的多阶段动态多目标测试资源分配方法
CN111047040A (zh) 基于IFPA算法的Web服务组合方法
CN108037979B (zh) 基于含隐变量贝叶斯网的虚拟机性能下降评估方法
CN107733846B (zh) 一种分配用户权限的方法及装置
EP3588326A1 (en) Solving a deterministic global optimisation problem

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