【技术实现步骤摘要】
本专利技术涉及计算机软件测试领域,设计了一种基于统计分析技术的自动生成可执行基础路径的新进化方法。该方法区别于原有方法的特色在于,生成的测试路径均为可执行的满足线性无关性的独立路径,即可执行的基础路径。
技术介绍
软件测试是软件生命周期中重要的组成部分,结构测试是软件测试的主要方法,路径测试又是结构测试中最有效的覆盖准则,其需要执行被测程序的测试路径。因此,自动生成测试路径是软件测试的关键任务,是简化软件测试过程的有效方法,能够降低软件测试成本,提高测试效率。基础路径测试是结构测试中最有效的测试标准之一,其能够检测被测程序中65%的错误,而且各种结构测试数据生成问题都是针对基础路径测试。另外,基础路径集中不包含的测试路径,都能由基础路径的线性关系表示。因此,自动生成基础路径对软件测试的研究具有重要意义。基于搜索的优化技术,如模拟退火算法、爬山算法、粒子群算法、禁忌搜索算法和遗传算法等已经成功应用于软件测试中。TraceN.等提出模拟退火算法生成路径覆盖测试数据方法。DeepakGarg等提出爬山算法生成基础路径测试数据方法。YaHuiJia等和ShujuanJiang等提出粒子群优化算法生成测试数据方法。DiazE.等提出基于禁忌搜索算法的软件结构测试方法。遗传算法在回归测试、变异测试、并行测试等问题中均有较好的应用。吴川等和杨波等研究遗传算法在回归测试中的应用,Chang-aiSun等、PedroRealesMateo等、党向盈等、张功杰等和巩敦卫等研究遗传算法在变异测试中的应用,G.H.Hwang等和田甜等研究遗传算法在并行程序测试中的应用,均取得了 ...
【技术保护点】
基于统计分析的可执行基础路径进化生成方法,其特征在于如下步骤:步骤1.1: 采用统计分析方法,应用统计分析模型检测被测程序条件语句相关性,根据条件语句的相关性类型,确定DD‑图中的互斥边,作为后续进化过程中判断可执行路径的依据;步骤1.2: 针对步骤1.1的采用统计分析方法确定的互斥边,提出了一种基于统计分析的可变长度遗传算法,应用可执行路径生成模型生成可执行的测试路径,该遗传算法在多目标进化优化的求解方法中可广泛应用;步骤1.3:使用步骤1.2的遗传算法生成可执行的测试路径,应用基础路径检测模型检验生成的测试路径是否为独立路径,如果生成的测试路径是独立路径,并且与已生成的基础路径线性无关,则将其加入可执行的基础路径集,可应用于任何路径测试方法中。
【技术特征摘要】
1.基于统计分析的可执行基础路径进化生成方法,其特征在于如下步骤:步骤1.1:采用统计分析方法,应用统计分析模型检测被测程序条件语句相关性,根据条件语句的相关性类型,确定DD-图中的互斥边,作为后续进化过程中判断可执行路径的依据;步骤1.2:针对步骤1.1的采用统计分析方法确定的互斥边,提出了一种基于统计分析的可变长度遗传算法,应用可执行路径生成模型生成可执行的测试路径,该遗传算法在多目标进化优化的求解方法中可广泛应用;步骤1.3:使用步骤1.2的遗传算法生成可执行的测试路径,应用基础路径检测模型检验生成的测试路径是否为独立路径,如果生成的测试路径是独立路径,并且与已生成的基础路径线性无关,则将其加入可执行的基础路径集,可应用于任何路径测试方法中。2.权利要求1中步骤1.1所述的统计分析方法,其特征在于包含如下步骤:步骤2.1:随机产生一组测试数据运行被测程序,统计不同条件语句谓词对应随机变量的取值情况,获得样本数据,利用最大似然估计方法,得到条件语句相关性对应的估计值,判定条件语句的相关性类型,设ni和nj是2个条件语句,则若ni取真分支时nj必然取真分支,则称语句组(ni,nj)具有T-T相关性;若ni取真分支时nj必然取假分支,则称语句组(ni,nj)具有T-F相关性;若ni取假分支时nj必然取真分支,则称语句组(ni,nj)具有F-T相关性;若ni取假分支时nj必然取假分支,则称语句组(ni,nj)具有F-F相关性;步骤2.2:以条件语句的相关性类型判断DD-图中的互斥边,设条件语句ni的真分支所对应的边为eiT,假分支所对应的边为eiF,则若语句对(ni,nj)具有T-T相关性,则称(eiT→ejF)为其对应的互斥边;若语句对(ni,nj)具有T-F相关性,则称(eiT→ejT)为其对应的互斥边;若语句对(ni,nj)具有F-T相关性,则称(eiF→ejF)为其对应的互斥边;若语句对(ni,nj)具有F-F相关性,则称(eiF→ejT)为其对应的互斥边。3.权利要求1中步骤1.2所述的基于统计分析的可变长度遗传算法,其特征在于包含如下步骤:步骤3.1:基于统计分析的可变长度遗传算法与传统遗传算法相比,染色体的表示方法和个体评价函数有所不同,并且增加了繁殖操作,算法描述如下:初始化,个体评价,选择操作,交叉操作,变异操作,繁殖操作,算法终止,若不满足终止条件,则,转至第步;若满足终止条件,则输出当前最优个体,算法结束;步骤3.2:基于统计分析的可变长度遗传算法,用整型变量表示染色体,代表被测程序DD-图中的边,染色体的长度依赖于基础路径的长度,随着迭代次数的改变逐渐增加,代表进化生成的测试路径,染色体的表示方法如下:步骤3.3:基于统计分析的可变长度遗传算法,设计适应度函数评价每个个体进化生成测试路径的优劣程度,从而决定其遗传机会的大小,其取值依赖于DD-路径中相邻边的概率,计算公式如下:f(xi):表示染色体xi(i=1,…,PM)的适应度函数值;d(xi):表示染色体xi相邻边的数量;w(eij):表示染色体xi中边ej的权重;L(xi):表示染色体xi的长度(即表示染色体xi中含有边的数量);步骤3.4:基于统计分析...
【专利技术属性】
技术研发人员:夏春艳,张岩,谢威,肖楠,磨然,
申请(专利权)人:牡丹江师范学院,
类型:发明
国别省市:黑龙江;23
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。