《智能科学技术著作丛书》序
前言
主要变量及表示方法
第1章进化变异测试入门1
1.1软件测试简介1
1.1.1软件测试基本方法2
1.1.2测试数据生成2
1.2变异测试简介3
1.2.1变异测试基本原理3
1.2.2变异测试基本假设4
1.2.3变异测试存在的问题5
1.3软件进化测试简介5
1.3.1遗传算法基本原理5
1.3.2软件进化测试7
1.4研究现状及存在的问题8
1.4.1测试数据进化生成研究现状8
1.4.2变异测试研究现状10
1.4.3进化变异测试研究现状13
1.4.4存在的问题13
1.5主要内容及结构安排14
1.6小结16
参考文献16
第2章等价变异体和顽固变异体的人工检测22
2.1研究问题22
2.2等价变异体的人工检测方法23
2.3实验设计25
2.3.1被测程序26
2.3.2变异算子27
2.3.3测试数据生成28
2.3.4变异准则29
2.3.5实验流程29
2.4实验结果及分析30
2.4.1等价变异体和顽固变异体的分布30
2.4.2每个算子对等价变异体和顽固变异体的贡献度32
2.4.3等价变异体产生的机理34
2.4.4程序大小对变异体等价性和顽固性的影响35
2.5对实验结果的进一步讨论36
2.6有效性分析37
2.7小结37
参考文献38
第3章基于相关性分析的变异体约简40
3.1研究动机40
3.2预备知识41
3.2.1弱变异测试41
3.2.2变异条件语句的插装42
3.2.3已有方法的不足43
3.3基于相关性分析的变异体约简44
3.3.1变异条件语句的相关性44
3.3.2变异条件语句相关性的判定45
3.3.3变异体约简方法47
3.4实验47
3.4.1研究问题47
3.4.2第一组实验48
3.4.3工业程序52
3.5小结55
参考文献55
第4章基于多目标进化优化的变异测试数据生成57
4.1研究动机57
4.2多目标变异测试数据生成问题的数学模型58
4.2.1问题描述58
4.2.2目标函数的构造59
4.2.3数学模型59
4.3基于遗传算法的测试数据生成60
4.3.1个体表示60
4.3.2个体评价61
4.3.3进化算子61
4.3.4优化问题的简化62
4.3.5算法终止条件62
4.3.6算法步骤62
4.4实验62
4.4.1研究问题62
4.4.2被测程序63
4.4.3实验设计64
4.4.4实验结果及分析64
4.5小结67
参考文献68
第5章基于分组的变异测试数据进化生成69
5.1研究动机69
5.2基于可达性的变异体分组70
5.2.1变异体相似性的度量70
5.2.2变异体分组71
5.3测试数据生成问题的数学模型72
5.4基于多种群遗传算法的测试数据生成73
5.4.1种群设置73
5.4.2进化个体编码74
5.4.3进化个体适应值74
5.4.4子优化问题的约简75
5.4.5算法终止条件75
5.4.6算法步骤76
5.5实验76
5.5.1研究问题76
5.5.2被测程序77
5.5.3实验设置77
5.5.4实验结果及分析78
5.6小结82
参考文献83
第6章基于变异分析和语句覆盖的测试数据缩减84
6.1研究动机84
6.2测试数据缩减问题的数学模型85
6.2.1问题描述86
6.2.2目标函数86
6.2.3约束函数86
6.2.4数学模型87
6.3进化求解算法87
6.3.1个体编码方法88
6.3.2个体适应度函数88
6.3.3遗传算子89
6.3.4算法步骤90
6.4实验90
6.4.1研究问题91
6.4.2被测程序91
6.4.3实验设置91
6.4.4实验结果及分析92
6.4.5在工业程序的实验94
6.5小结96
参考文献97
第7章基于缺陷检测的多目标测试数据生成99
7.1研究动机99
7.2多目标测试数据生成模型100
7.2.1目标函数的建立101
7.2.2约束条件102
7.2.3多目标测试数据生成问题的数学模型102
7.3基于集合进化的求解方法102
7.3.1个体表示102
7.3.2适应度函数103
7.3.3进化策略103
7.3.4算法步骤105
7.4基于变异分析的测试数据质量检测105
7.5实例分析106
7.6实验108
7.6.1研究问题108
7.6.2被测程序109
7.6.3第一组实验109
7.6.4第二组实验111
7.7小结113
参考文献113
第8章一种基于占优关系的变异测试方法115
8.1研究动机115
8.2基于语句占优关系的变异测试116
8.2.1语句占优关系116
8.2.2基于占优关系的变异测试准则117
8.3测试数据生成问题的数学模型118
8.4测试数据生成问题的进化求解119
8.4.1个体编码方式119
8.4.2个体适应度119
8.4.3遗传操作与进化策略120
8.4.4算法步骤120
8.5实验120
8.5.1研究问题120
8.5.2第一组实验121
8.5.3第二组实验125
8.6小结126
参考文献127