首页> 中文学位 >基于集合进化与占优关系的变异测试用例生成
【6h】

基于集合进化与占优关系的变异测试用例生成

代理获取

目录

声明

致谢

1 绪论

1.1 研究动机(Motivation)

1.2 研究目标(Objectives)

1.3 研究内容(Contents)

1.4 研究方法(Methods)

1.5 成果及意义(Achievements and Significance)

1.6 论文框架(Outline)

1.7 本章小结(Conclusions)

2 相关工作

2.1变异测试(Mutation Testing)

2.2 变异测试用例生成( Test Case Generation for Mutation Testing)

2.3 变异体约简(Mutant Reduction)

2.4 弱变异测试(Weak Mutation Testing)

2.5 相关性分析(Correlation Analysis)

2.6 对相关工作的分析(Analysis of Related Work)

2.7 本章小结(Conclusions)

3 基于集合进化的变异测试用例生成1

3.1 研究背景(Backgrounds)

3.2 问题建模(Problem Modelling)

3.3 基于集合进化的测试用例生成(Test Case Generation Basedon Set Evolution)

3.4 实验(Experiments)

3.5 本章小结(Conclusions)

4 基于占优关系的变异体约简2

4.1 研究背景(Backgrounds)

4.2 问题描述(Problem Description)

4.3提出的变异体约简方法(Proposed Method for Mutant Reduction)

4.4实验(Experiments)

4.5 本章小结(Conclusions)

5基于统计分析的占优关系检测3

5.1 研究背景(Backgrounds)

5.2 问题描述(Problem Description)

5.3 统计分析与占优关系检测(Statistical Analysis and Detection of Dominance Relations)

5.4实验(Experiments)

5.5 本章小结(Conclusions)

6 基于占优度的变异测试用例生成4

6.1 研究背景(Backgrounds)

6.2 问题描述(Problem Description)

6.3基于占优度的测试用例生成(Dominance Degree Based Test Case Generation)

6.4 实验(Experiments)

6.5 本章小结(Conclusions)

7 集合进化测试用例生成原型系统5

7.1 开发背景(Backgrounds)

7.2 原型系统设计(Prototype System Design)

7.3 原型系统实现(Prototype System Implementation)

7.4 使用说明(Instructions)

7.5 本章小结(Conclusions)

8结论

8.1 本文所做工作(Achievements of This Dissertation)

8.2 需要进一步研究的问题(Issues to be Further Researched)

参考文献

作者简历

学位论文数据集

展开▼

摘要

软件测试用于检测软件中可能存在的缺陷,从而改善软件质量。软件测试的一个核心问题是生成高质量的测试用例集,从而检测软件中的缺陷。作为一种面向缺陷的测试技术,变异测试不仅能有效评价现有测试用例集的质量,也能辅助生成高质量的测试用例集,其准则是杀死一定数量的变异体。然而,为数众多的变异体导致高昂的测试代价,严重影响这一技术在实际测试中的广泛应用。已有的基于变异测试的测试用例生成方法,其效率十分低下,因此,研究新的测试用例生成方法是非常必要的。通过约简变异体数量,也非常有助于提高测试用例的生成效率。本文基于变异测试研究新的测试用例生成方法,以高效生成具有很高缺陷检测能力的测试用例集。
  首先,针对变异测试用例生成问题,提出基于集合进化的测试用例生成方法。所提方法首先基于弱变异测试转化方法,将变异前后的语句组合成能够反映杀死对应变异体的必要性条件,并利用组合后的条件语句构建变异分支。因此,覆盖变异分支真分支的测试用例集,能够以弱变异测试准则杀死对应的变异体。然后,将所有变异分支集成到原程序中,形成新的被测程序,从而将杀死变异体的变异测试问题,转化为覆盖变异分支真分支的分支覆盖测试问题。接着,基于转化后的新程序,建立新的测试用例生成问题的数学模型,对该模型的一次求解,能够生成杀死所有变异体的测试用例集。最后,在利用集合进化方法求解上述模型时,设计具有针对性的适应度函数和进化策略。所提方法能够显著降低基于变异测试的测试用例生成成本。
  然后,转化后的新程序中集成了为数众多的变异分支,显著增加了转化后新程序的复杂度,从而降低了测试用例生成的效率。针对这一问题,提出基于占优关系的变异体约简方法。所提方法在转化后的新程序中,分析变异分支之间的占优关系,由于覆盖非被占优变异分支的测试用例集,也能够覆盖被占优变异分支,因此,被占优变异分支对应的变异体是冗余的,而非被占优变异分支对应的变异体则是约简后的变异体。在分析非被占优变异分支时,构建占优关系图,并利用图中入度为0的顶点,识别非被占优变异分支。由于仅需覆盖非被占优变异分支,生成的测试用例集就能够以弱变异测试准则杀死所有变异体,因此,所提方法能够约简变异体数量,从而提高测试用例的生成效率。
  接着,为了提高分析占优关系的效率,增强基于占优关系约简变异体方法的实用性,提出统计占优分析方法。所提方法通过建立统计分析模型,利用测试用例集自动检测新程序中变异分支之间的占优关系,并构建占优关系图。根据占优关系图中入度为0的顶点,得到非被占优变异分支,其对应的变异体就是约简后的变异体。所提方法能够自动检测占优关系,从而有效约简变异体。
  最后,研究表明具有优先级排序的测试用例集,使得缺陷检测能力强的测试用例能够优先执行,从而降低实际软件测试中缺陷检测的成本。鉴于此,提出基于占优度的测试用例生成方法。所提方法提出占优度的概念,以确定非被占优变异分支的顺序,占优度在数值上等于非被占优变异分支占优的变异分支数量,即占优图中对应顶点的出度;并基于占优度提出两种策略,以选择非被占优变异分支,优先生成缺陷检测能力强的测试用例。
  此外,针对建立的测试用例生成问题的数学模型,设计和实现了集合进化测试用例生成的原型系统,并详细介绍该系统的使用方法。
  本文研究成果丰富了变异测试理论,降低了变异测试的成本,提高了测试用例的生成效率。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号