一种并行程序顽固变异体的判定方法及系统技术方案

技术编号:30642896 阅读:16 留言:0更新日期:2021-11-04 00:43
本公开公开了一种并行程序顽固变异体的判定方法,其特征在于,包括:根据变异语句的执行状况,对变异语句的发送节点执行顺序进行等价类划分;确定影响变异体顽固性的因素;根据影响变异体顽固性的因素,结合等价类划分后的发送节点执行顺序对因素的影响,计算变异体的顽固性复合指标;设置阈值,与所述顽固性复合指标比较,完成顽固变异体的判定;本公开将并行程序的理念与变异测试原理相结合,根据发送节点执行顺序与影响变异体顽固性因素之间的联系,筛选出并行程序的顽固变异体,对顽固变异体着重测试,进而提高测试效率。进而提高测试效率。进而提高测试效率。

【技术实现步骤摘要】
一种并行程序顽固变异体的判定方法及系统


[0001]本公开属于计算机软件测试
,尤其涉及一种并行程序顽固变异体的判定方法及系统。

技术介绍

[0002]本部分的陈述仅仅是提供了与本公开相关的
技术介绍
信息,不必然构成在先技术。
[0003]软件测试是提高软件质量的重要途径;为了对软件进行测试,通常需要准备一定数量的测试数据,称为测试数据集;测试数据集的充分性是提高软件测试的可信度关键前提;评价某测试数据集的充分性,往往通过对被测软件实施变异测试来实现;实施变异测试的过程如下:首先,对原程序依据一定规则,某个语句进行符合语法的微小变动,得到的新程序称为变异体,所依据的规则叫做变异算子;然后,采用相同的输入,分别执行原程序和变异体,如果这两个程序的输出或者某中间状态不同,则称该输入杀死了变异体;除了用于评价测试数据集的充分性,变异测试还被用于测试数据生成、缺陷检测等;如何提高变异测试效率是近年来软件测试领域的热点问题;顽固变异体是影响变异测试效率的重要因素;顽固变异体的有效判定和杀死顽固变异体测试数据的快速生成是提高变异测试效率的关键途径之一。
[0004]并行程序,是指含有两个或者以上并行执行流程的程序;分布存储并行程序指每个流程拥有各自独立的存储器,程序执行过程中,流程之间的交互主要以消息传递的方式实现;通过多流程并行执行和相互通信,并行程序能够实现较高的求解速度和精度,已经广泛应用于科学研究和生产生活中,如天气预报、邮件过滤以及病毒分析等;具体地讲,除了具有一般串行程序的特点以外,并行、通信和不确定性是分布存储并行程序的主要特征,也给分布存储并行程序的变异测试带来了挑战;为了改进变异测试效率,研究该类程序的顽固变异测试理论和方法是十分有意义的,目前还不存在分布存储并行程序顽固变异体判定的方法,严重影响了变异测试在分布存储并行程序的应用。

技术实现思路

[0005]本公开为了解决上述问题,提出了一种并行程序顽固变异体的判定方法及系统;本公开将并行程序的理念与变异测试原理相结合,根据发送节点执行顺序与影响变异体顽固性因素之间的联系,筛选出并行程序的顽固变异体,可通过对顽固变异体着重测试,进而提高测试效率。
[0006]第一方面,本公开提供了一种并行程序顽固变异体的判定方法,包括:
[0007]根据变异语句的执行状况,对变异语句的发送节点执行顺序进行等价类划分;
[0008]确定影响变异体顽固性的因素;
[0009]根据影响变异体顽固性的因素,结合等价类划分后的发送节点执行顺序对因素的影响,计算变异体的顽固性复合指标;
[0010]设置阈值,与所述顽固性复合指标比较,完成顽固变异体的判定。
[0011]进一步的,根据变异语句中的变量确定变异语句的执行状况;
[0012]结合通信依赖对变异语句相关变量集合中变量的影响,对变异语句发送节点执行顺序进行等价类划分;根据发送节点执行顺序是否影响变异语句的执行,将发送节点执行顺序划分为影响变异语句执行的发送节点执行顺序集合和不影响变异语句执行的发送节点执行顺序集合;
[0013]根据任意程序输入下,变异语句执行状况不同,对影响变异语句执行的发送节点执行顺序集合进行分类;
[0014]所述变异语句相关变量集合,是指变异语句中的所有变量以及数据依赖的变量;所述通信依赖,是指由流程之间的通信导致变量之间的依赖关系。
[0015]进一步的,将变异语句的可达概率、变异算子的属性、变异语句与流程的相关性和变异语句与输入变量的相关性作为确定影响变异体顽固性的因素;
[0016]所述可达概率是指反映变异语句的可达性;所述变异算子的属性是指变异算子对变异语句执行状态的影响;所述变异语句与流程的相关性反映变异语句相关的流程数。
[0017]进一步的,计算变异体的顽固性复合指标包括基于单个路径计算变异体的顽固性复合指标和基于多个路径计算变异体的顽固性复合指标。
[0018]进一步的,基于单个路径计算变异体的顽固性复合指标包括:
[0019]变异语句相关变量集合中的元素不受发送语句执行顺序影响时,发送语句执行顺序对于变异语句的可达概率、变异算子的属性、变异语句与流程的相关性和变异语句与输入变量的相关性均没有影响,变异语句的可达性作为影响变异体顽固性的首要条件;可达概率为1时,顽固性复合指标取决变异算子的属性、变异语句与流程的相关性和变异语句与输入变量的相关性;
[0020]变异语句相关变量集合中的元素受发送语句执行顺序影响时,发送节点执行顺序不影响变异语句的执行,在任何程序输入下,执行任何一条可执行路径,均无法到达变异语句,可达概率、变异算子的属性、变异语句与流程的相关性和变异语句与输入变量的相关性均为0,顽固性复合指标的计算,根据变异语句相关变量集合中的元素不受发送语句执行顺序影响时顽固性复合指标的计算进行。
[0021]进一步的,基于多个路径计算变异体的顽固性复合指标包括:从程序的开始语句到变异语句的路径有多条,计算所有路径的顽固性复合指标;通过所有路径的顽固性复合指标对路径的覆盖难度进行排名,选择所有路径的顽固性复合指标中的最小值作为计算变异体的顽固性复合指标。
[0022]进一步的,所述顽固性复合指标的值越大,变异体测试数据生成越难;预先设定一个阈值,所述顽固性复合指标的值大于设定的阈值,则认为变异体是顽固的。
[0023]第二方面,本公开还提供了一种并行程序顽固变异体的判定系统,包括等价类划模块、顽固性复合指标计算模块和顽固变异体判定模块;
[0024]所述等价类划模块,被配置为:根据变异语句的执行状况,对变异语句的发送节点执行顺序进行等价类划分;
[0025]所述顽固性复合指标计算模块,被配置为:确定影响变异体顽固性的因素;根据影响变异体顽固性的因素,结合等价类划分后的发送节点执行顺序对因素的影响,计算变异
体的顽固性复合指标;
[0026]所述顽固变异体判定模块,被配置为:设置阈值,与所述顽固性复合指标比较,完成顽固变异体的判定。
[0027]第三方面,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面中所述的并行程序顽固变异体的判定方法。
[0028]第四方面,本公开还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面中所述并行程序顽固变异体的判定方法。
[0029]与现有技术相比,本公开的有益效果为:
[0030]本公开提出了基于变异语句的发送节点执行顺序等价类的生成方法;提出了影响变异体顽固性的因素以及计算变异体顽固性的方法,在实现顽固变异体判定的基础上,根据发送节点执行顺序与影响变异体顽固性因素之间的联系,筛选出并行程序的顽固变异体,通过对顽固变异体着重测试,极大的提高了测试效率。
附图说明
[0031]构成本实施例的一部分的说明书附图用来提供对本本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种并行程序顽固变异体的判定方法,其特征在于,包括:根据变异语句的执行状况,对变异语句的发送节点执行顺序进行等价类划分;确定影响变异体顽固性的因素;根据影响变异体顽固性的因素,结合等价类划分后的发送节点执行顺序对因素的影响,计算变异体的顽固性复合指标;设置阈值,与所述顽固性复合指标比较,完成顽固变异体的判定。2.如权利要求1所述的一种并行程序顽固变异体的判定方法,其特征在于,根据变异语句中的变量确定变异语句的执行状况;结合通信依赖对变异语句相关变量集合中变量的影响,对变异语句发送节点执行顺序进行等价类划分;根据发送节点执行顺序是否影响变异语句的执行,将发送节点执行顺序划分为影响变异语句执行的发送节点执行顺序集合和不影响变异语句执行的发送节点执行顺序集合;根据任意程序输入下,变异语句执行状况不同,对影响变异语句执行的发送节点执行顺序集合进行分类;所述变异语句相关变量集合,是指变异语句中的所有变量以及数据依赖的变量;所述通信依赖,是指由流程之间的通信导致变量之间的依赖关系。3.如权利要求2所述的一种并行程序顽固变异体的判定方法,其特征在于,将变异语句的可达概率、变异算子的属性、变异语句与流程的相关性和变异语句与输入变量的相关性作为确定影响变异体顽固性的因素;所述可达概率是指反映变异语句的可达性;所述变异算子的属性是指变异算子对变异语句执行状态的影响;所述变异语句与流程的相关性反映变异语句相关的流程数。4.如权利要求2所述的一种并行程序顽固变异体的判定方法,其特征在于,计算变异体的顽固性复合指标包括基于单个路径计算变异体的顽固性复合指标和基于多个路径计算变异体的顽固性复合指标。5.如权利要求3所述的一种并行程序顽固变异体的判定方法,其特征在于,基于单个路径计算变异体的顽固性复合指标包括:变异语句相关变量集合中的元素不受发送语句执行顺序影响时,发送语句执行顺序对于变异语句的可达概率、变异算子的属性、变异语句与流程的相关性和变异语句与输入变量的相关性均没有影响;变异语句的可达性作为影响变异体顽固性的首要条件,可达概率为1时,则顽固性复合指标取决变异算子的属性...

【专利技术属性】
技术研发人员:田甜杨秀婷王安轼马晓娜
申请(专利权)人:山东建筑大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1