组合测试:用例集约减与本质组合研究

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:eire
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
组合测试是一种重要的软件测试方法。它以覆盖表作为测试用例集,能够以少量的测试用例有效地检测由软件各参数之间的交互作用所触发的失效。  如何得到尽可能小规模的覆盖表是组合测试的关键也是极具挑战性的问题。已有的生成方法,通常会产生大量的冗余组合,使得生成的覆盖表规模较大。于是,人们提出了覆盖表约减的方法:重复不断的替换覆盖表中某些项的值,产生并删除冗余行,从而达到减小覆盖表规模的目的。  如何确定组合测试的覆盖强度也是人们研究的重点问题。经验的结果表明:几乎所有的软件失效都是由少量参数间的交互作用触发的(不超过6)。它说明τ-way测试(较小的τ)就能和穷尽组合的测试几乎同样有效。  本文主要研究以上两个问题,具体工作包括:  1.改进了覆盖表约减的随机算法。证明了组合冗余是导致覆盖表规模较大的根本原因,归纳了覆盖表约减的核心思想。约减的随机算法已被证明非常有效,在理论分析的基础上,提出了一种改进的算法。通过对近300个覆盖表的实验表明,改进的算法更加有效。  2.提出了一个预测覆盖表约减程度的度量。针对约减规模较大的覆盖表比较耗时的问题,我们提出了一个预测约减程度的度量。这也是一些学者提出但尚未解决的问题。实验数据表明,提出的度量相当准确。  3.提出了本质组合的概念,并分析其性质。相比于传统的组合测试只关心组合覆盖率,提出了组合与代码之间的三个映射关系,证明了本质组合是保证代码覆盖最关键的组合,反映了参数之间的交互作用。覆盖本质组合的测试用例集,能实现代码的最大覆盖。  4.基于本质组合,对组合测试覆盖强度进行建模和理论分析。建立一个概率模型,从理论上证明对于n个参数的系统,几乎所有本质组合的维数都不超过logn。这个结果表明几乎所有的交互作用都是发生在logn个参数之间。  5.基于本质组合,研究了组合与软件缺陷的关系。针对组合测试的故障诊断,提出了缺陷组合的概念,分析了缺陷组合与已有的重要结果——极小失效组合的关系。研究结果表明缺陷组合是组合测试故障诊断的最理想目标,极小失效组合是实现这个目标的重要途径。
其他文献
磁场与惯性测量装置被广泛地应用到基础物理、航空航天以及地质探测等领域.实现超高灵敏的磁场测量与惯性测量,无论对前沿基础科学研究还是实际的工程应用都具有重要的意义.基
学位
代数数论的基本研究对象是代数数域,数域类群和类数的研究是代数数论的一个中心课题,它的研究结果对于数在数域中的分解和运用具有重要的指导意义。当一个素数在有理数域上不能
随着科学技术的快速发展,高维数据在很多领域中越来越常见,如生物信息学、基因组学、微列阵、蛋白质组学、经济学、金融学等。正确地选出重要的协变量,不仅能提高模型的解释性,还
《义务教育英语课程标准(2011年版)》提出义务教育阶段英语课程的主要目的是为了学生发展综合语言运用能力打基础,为他们继续学习英语和未来发展创造有利条件.语言既是交流的