摘要 | 第3-4页 |
Abstract | 第4页 |
1 绪论 | 第7-9页 |
1.1 研究背景 | 第7-8页 |
1.2 本文主要工作及创新 | 第8页 |
1.3 论文结构 | 第8-9页 |
2 软件故障定位基础知识及研究现状 | 第9-18页 |
2.1 软件故障定位基础知识 | 第9页 |
2.2 软件故障定位及研究现状 | 第9-11页 |
2.2.1 软件故障定位简介 | 第9页 |
2.2.2 研究现状 | 第9-11页 |
2.2.3 目前研究中存在的问题 | 第11页 |
2.3 常用的软件故障定位方法 | 第11-17页 |
2.3.1 基于距离度量的方法 | 第12-13页 |
2.3.2 基于特征统计的故障定位方法 | 第13-17页 |
2.4 现有软件定位技术的不足 | 第17页 |
2.5 小结 | 第17-18页 |
3 基于数据挖掘的软件多故障定位框架 | 第18-24页 |
3.1 框架的提出 | 第18-20页 |
3.1.1 测试用例集动态执行信息的收集 | 第19页 |
3.1.2 针对不同错误的测试用例子集的生成 | 第19页 |
3.1.3 可疑度的计算 | 第19-20页 |
3.1.4 定位结果的评价 | 第20页 |
3.2 聚类算法的引入 | 第20-23页 |
3.2.1 聚类分析过程 | 第21页 |
3.2.2 聚类分析算法介绍 | 第21-23页 |
3.3 本章小结 | 第23-24页 |
4 基于数据挖掘的软件多故障定位方法 | 第24-40页 |
4.1 传统的one-bug-at-a-time的多故障定位方式 | 第24-25页 |
4.2 基于聚类的测试用例子集构造 | 第25-30页 |
4.2.1 Jones的测试用例子集构造方法 | 第26页 |
4.2.2 基于覆盖向量的测试用例子集构造方法 | 第26-28页 |
4.2.3 相似系数的选择 | 第28-29页 |
4.2.4 聚类算法的提出 | 第29-30页 |
4.3 并行多故障定位技术 | 第30-37页 |
4.3.1 并行多故障定位技术的基本思想 | 第30页 |
4.3.2 基于Tarantula方法的并行多故障定位技术 | 第30-32页 |
4.3.3 基于交叉表方法的并行多故障定位技术 | 第32-36页 |
4.3.4 基于交叉表的故障定位与Tarantula故障定位方法的对比 | 第36-37页 |
4.4 多错误定位效果评价标准 | 第37页 |
4.5 多故障定位技术定位效果对比 | 第37-39页 |
4.6 本章小结 | 第39-40页 |
5 实验和讨论 | 第40-50页 |
5.1 实验基本流程 | 第40页 |
5.2 实验环境 | 第40-43页 |
5.2.1 GCC插桩与编译 | 第41页 |
5.2.2 GCOV工具简介 | 第41-43页 |
5.3 实验数据说明 | 第43-45页 |
5.4 实验结果及分析 | 第45-49页 |
5.4.1 基于覆盖向量的测试用例子集构造方法的验证 | 第45-46页 |
5.4.2 基于覆盖向量构造方法与Jones构造方法的对比 | 第46-48页 |
5.4.3 基于交叉表与基于Tarantula的并行多故障定位对比 | 第48-49页 |
5.5 本章小结 | 第49-50页 |
6 总结 | 第50-52页 |
6.1 总结 | 第50页 |
6.2 未来的工作和展望 | 第50-52页 |
致谢 | 第52-53页 |
参考文献 | 第53-57页 |
附录 | 第57页 |