测试数据自动生成方法是软件测试领域研究的热点。基于遗传算法的启发式搜索算法是一种路径覆盖生成测试数据的方法。文中提出了一种基于自适应随机测试(Adaptive Random Testing,ART)算法更新种群的方法,将ART融入遗传算法,优化选择操...测试数据自动生成方法是软件测试领域研究的热点。基于遗传算法的启发式搜索算法是一种路径覆盖生成测试数据的方法。文中提出了一种基于自适应随机测试(Adaptive Random Testing,ART)算法更新种群的方法,将ART融入遗传算法,优化选择操作,动态更新种群,从而增加种群进化过程中的个体多样性,提高了收敛速度,有效地减少了陷入局部最优。实验结果显示,与传统遗传算法生成测试数据的方法相比,改进的算法明显提高了路径覆盖率,减少了种群平均进化代数。展开更多
镜像自适应随机测试(Mirror Adaptive Random Testing,MART)算法将输入空间划分为多个不相交的相等子域,源域中使用自适应随机测试(Adaptive Random Testing,ART)算法生成测试数据,剩余子域中使用镜像函数生成镜像测试数据.镜像策略的...镜像自适应随机测试(Mirror Adaptive Random Testing,MART)算法将输入空间划分为多个不相交的相等子域,源域中使用自适应随机测试(Adaptive Random Testing,ART)算法生成测试数据,剩余子域中使用镜像函数生成镜像测试数据.镜像策略的引入减少了ART算法的计算开销,但是算法的检错有效性也随之降低.通过研究MART算法的特征,分析如何提升MART算法的检错有效性.针对镜像函数将源测试数据镜像到各子域时的镜像顺序,对比分析镜像选择序与镜像函数对MART算法的影响,本文提出了基于镜像受限选择序的MART算法,通过约束镜像选择序,使镜像测试数据分布更均匀.在仿真实验与实例实验结果中均显示,针对镜像策略中镜像选择序的优化,提高了MART算法的检错有效性.展开更多
随机测试和划分测试是两种重要的测试方法,关于两者在失效检测能力和效率方面的比较一直是软件测试领域的研究热点之一.适应性随机测试是对随机测试的一种增强,通过实现测试用例在输入域上的均匀分布,提高了随机测试的失效检测能力.该...随机测试和划分测试是两种重要的测试方法,关于两者在失效检测能力和效率方面的比较一直是软件测试领域的研究热点之一.适应性随机测试是对随机测试的一种增强,通过实现测试用例在输入域上的均匀分布,提高了随机测试的失效检测能力.该文从划分测试出发,借鉴了均匀分布的思想,提出了一种基于优先级的迭代划分测试方法(Iterative Partition Testing based on Priority Sampling,IPT-PS).首先迭代划分输入域并选取划分后子域的中心点作为待执行的测试用例,随后采取优先级策略,将待执行的测试用例分为3种不同优先等级并依次执行.迭代划分和中心采样仅需要已知输入域的空间信息,优先级执行则考虑了测试用例的不同空间特性,上述3种操作均仅需要很少的时间开销并力求实现测试用例在输入域上的均匀分布,以提高失效检测能力.该文通过理论分析给出了IPT-PS检测出对应失效所需测试用例数量的上界,并通过一系列实验结果表明:IPT-PS在仅使用接近随机测试时间开销的情况下,可以获得与适应性随机测试相近甚至更好的失效检测能力,是一种高效的测试方法.展开更多
针对目前面向对象软件的测试方法较少且效率不高的问题,提出将基于ART(adaptive ran-dom testing)思想的限制性随机测试RRT(restricted random testing)应用到面向对象程序中的方法.分析了面向对象软件测试用例的结构,提出了测试用例包...针对目前面向对象软件的测试方法较少且效率不高的问题,提出将基于ART(adaptive ran-dom testing)思想的限制性随机测试RRT(restricted random testing)应用到面向对象程序中的方法.分析了面向对象软件测试用例的结构,提出了测试用例包含动态部分和静态部分.确定测试用例之间的距离为动态部分和静态部分的距离和,并分别给出了这2个距离的计算公式.设计了基于RRT的测试原型系统,该原型系统主要的功能模块有类图录入模块、测试用例距离度量模块、基于RRT测试用例生成模块、结果分析模块.通过试验对比了文中方法与随机测试方法.结果表明,文中提出面向对象的RRT方法在发现第1个程序错误的测试中比随机测试方法减少了约50%的测试用例数量,且在发现测试用例的质量上也几乎与随机测试相同.文中提出的测试用例度量机制能够有效地对面向对象软件中的测试用例进行区分,基于RRT的测试原型系统也能自动化地生成测试用例并自动测试从而大大提高了面向对象软件测试的效率.展开更多
随机测试(random testing,RT)是一种简单易用的测试技术,它从输入域随机地选择测试用例,直至发现一个失效或测试资源耗尽.但它因为不利用任何软件需求和代码信息而被认为是效率低下的.基于失效域分布的特征,Chen提出了一种名叫适应性随...随机测试(random testing,RT)是一种简单易用的测试技术,它从输入域随机地选择测试用例,直至发现一个失效或测试资源耗尽.但它因为不利用任何软件需求和代码信息而被认为是效率低下的.基于失效域分布的特征,Chen提出了一种名叫适应性随机测试(adaptive random testing,ART)的新方法.ART虽然提高了随机测试的失效发现效率,但与RT一样,在发现一个失效后就停止测试,而现实中许多软件都是具有多个输入输出变量的,它可能存在多个缺陷,针对这样的软件进行测试,ART显然存在一定的局限.将I/O关系信息引入ART,在I/O关联性分析的基础上,提出了一种基于I/O的ART新方法.仿真实验的结果证明,相对于FSCS-ART而言,新算法发现失效的效率有了极大的提高,同时,它可以一次发现多个失效,更适用于多个输入输出变量的软件的测试.展开更多
文摘测试数据自动生成方法是软件测试领域研究的热点。基于遗传算法的启发式搜索算法是一种路径覆盖生成测试数据的方法。文中提出了一种基于自适应随机测试(Adaptive Random Testing,ART)算法更新种群的方法,将ART融入遗传算法,优化选择操作,动态更新种群,从而增加种群进化过程中的个体多样性,提高了收敛速度,有效地减少了陷入局部最优。实验结果显示,与传统遗传算法生成测试数据的方法相比,改进的算法明显提高了路径覆盖率,减少了种群平均进化代数。
文摘镜像自适应随机测试(Mirror Adaptive Random Testing,MART)算法将输入空间划分为多个不相交的相等子域,源域中使用自适应随机测试(Adaptive Random Testing,ART)算法生成测试数据,剩余子域中使用镜像函数生成镜像测试数据.镜像策略的引入减少了ART算法的计算开销,但是算法的检错有效性也随之降低.通过研究MART算法的特征,分析如何提升MART算法的检错有效性.针对镜像函数将源测试数据镜像到各子域时的镜像顺序,对比分析镜像选择序与镜像函数对MART算法的影响,本文提出了基于镜像受限选择序的MART算法,通过约束镜像选择序,使镜像测试数据分布更均匀.在仿真实验与实例实验结果中均显示,针对镜像策略中镜像选择序的优化,提高了MART算法的检错有效性.
文摘随机测试和划分测试是两种重要的测试方法,关于两者在失效检测能力和效率方面的比较一直是软件测试领域的研究热点之一.适应性随机测试是对随机测试的一种增强,通过实现测试用例在输入域上的均匀分布,提高了随机测试的失效检测能力.该文从划分测试出发,借鉴了均匀分布的思想,提出了一种基于优先级的迭代划分测试方法(Iterative Partition Testing based on Priority Sampling,IPT-PS).首先迭代划分输入域并选取划分后子域的中心点作为待执行的测试用例,随后采取优先级策略,将待执行的测试用例分为3种不同优先等级并依次执行.迭代划分和中心采样仅需要已知输入域的空间信息,优先级执行则考虑了测试用例的不同空间特性,上述3种操作均仅需要很少的时间开销并力求实现测试用例在输入域上的均匀分布,以提高失效检测能力.该文通过理论分析给出了IPT-PS检测出对应失效所需测试用例数量的上界,并通过一系列实验结果表明:IPT-PS在仅使用接近随机测试时间开销的情况下,可以获得与适应性随机测试相近甚至更好的失效检测能力,是一种高效的测试方法.
文摘针对目前面向对象软件的测试方法较少且效率不高的问题,提出将基于ART(adaptive ran-dom testing)思想的限制性随机测试RRT(restricted random testing)应用到面向对象程序中的方法.分析了面向对象软件测试用例的结构,提出了测试用例包含动态部分和静态部分.确定测试用例之间的距离为动态部分和静态部分的距离和,并分别给出了这2个距离的计算公式.设计了基于RRT的测试原型系统,该原型系统主要的功能模块有类图录入模块、测试用例距离度量模块、基于RRT测试用例生成模块、结果分析模块.通过试验对比了文中方法与随机测试方法.结果表明,文中提出面向对象的RRT方法在发现第1个程序错误的测试中比随机测试方法减少了约50%的测试用例数量,且在发现测试用例的质量上也几乎与随机测试相同.文中提出的测试用例度量机制能够有效地对面向对象软件中的测试用例进行区分,基于RRT的测试原型系统也能自动化地生成测试用例并自动测试从而大大提高了面向对象软件测试的效率.
文摘随机测试(random testing,RT)是一种简单易用的测试技术,它从输入域随机地选择测试用例,直至发现一个失效或测试资源耗尽.但它因为不利用任何软件需求和代码信息而被认为是效率低下的.基于失效域分布的特征,Chen提出了一种名叫适应性随机测试(adaptive random testing,ART)的新方法.ART虽然提高了随机测试的失效发现效率,但与RT一样,在发现一个失效后就停止测试,而现实中许多软件都是具有多个输入输出变量的,它可能存在多个缺陷,针对这样的软件进行测试,ART显然存在一定的局限.将I/O关系信息引入ART,在I/O关联性分析的基础上,提出了一种基于I/O的ART新方法.仿真实验的结果证明,相对于FSCS-ART而言,新算法发现失效的效率有了极大的提高,同时,它可以一次发现多个失效,更适用于多个输入输出变量的软件的测试.