摘要 | 第5-6页 |
ABSTRACT | 第6-7页 |
第一章 绪论 | 第11-17页 |
1.1 研究的背景与意义 | 第11-13页 |
1.2 国内外研究现状 | 第13-14页 |
1.3 研究的主要内容与贡献 | 第14-15页 |
1.4 文章组织结构 | 第15-17页 |
第二章 背景技术介绍 | 第17-32页 |
2.1 符号执行技术 | 第17-29页 |
2.1.1 符号执行树 | 第17-18页 |
2.1.2 符号执行基本概念 | 第18-19页 |
2.1.3 传统符号执行 | 第19-21页 |
2.1.4 现代符号执行 | 第21-24页 |
2.1.5 符号执行面临的问题 | 第24-25页 |
2.1.6 符号执行工具 | 第25-29页 |
2.2 SMT求解技术 | 第29-31页 |
2.2.1 命题可满足性和求解器 | 第29-30页 |
2.2.2 SMT应用 | 第30-31页 |
2.2.3 SMT-LIB语言 | 第31页 |
2.3 本章小结 | 第31-32页 |
第三章 基于符号执行的自动测试案例生成工具设计与实现 | 第32-46页 |
3.1 总体框架设计 | 第32-33页 |
3.2 测试案例自动生成流程 | 第33-38页 |
3.2.1 测试前准备 | 第35-37页 |
3.2.2 测试案例生成流程 | 第37-38页 |
3.3 AUTCS的设计与实现 | 第38-42页 |
3.3.1 客户端设计与实现 | 第38-39页 |
3.3.2 服务端的设计与实现 | 第39-42页 |
3.4 实验及分析 | 第42-45页 |
3.5 本章小结 | 第45-46页 |
第四章 SMT求解器适配接口优化约束求解 | 第46-55页 |
4.1 SMT-LIB标准语言和SMT求解器 | 第46-49页 |
4.1.1 SMT-LIB标准语言简介 | 第46-48页 |
4.1.2 SMT求解器 | 第48-49页 |
4.2 求解器适配接口设计 | 第49-50页 |
4.3 求解器适配接口实现 | 第50-54页 |
4.3.1 数据类型和运算符 | 第50-52页 |
4.3.2 测试案例的生成 | 第52页 |
4.3.3 求解器调用接口及调用逻辑 | 第52-54页 |
4.4 本章小结 | 第54-55页 |
第五章 智能覆盖策略缓解路径爆炸问题 | 第55-82页 |
5.1 软件度量 | 第55-57页 |
5.2 基本搜索策略 | 第57-61页 |
5.3 基于随机搜索与深度优先搜索结合之快速分支覆盖 | 第61-73页 |
5.3.1 背景说明 | 第61-62页 |
5.3.2 随机搜索与深度优先搜索交叉策略 | 第62-65页 |
5.3.3 基于随机种子的新分支深度优先搜索策略 | 第65-70页 |
5.3.4 实验及分析 | 第70-73页 |
5.4 基于CFG图的深度优先搜索策略 | 第73-81页 |
5.4.1 背景说明 | 第73-74页 |
5.4.2 算法设计 | 第74页 |
5.4.3 算法实现 | 第74-77页 |
5.4.4 实验与分析 | 第77-81页 |
5.5 本章小结 | 第81-82页 |
第六章 并行技术提升测试案例生成工具性能 | 第82-95页 |
6.1 并行处理技术 | 第82页 |
6.2 并行搜索策略 | 第82-89页 |
6.2.1 算法设计 | 第83-85页 |
6.2.2 算法实现 | 第85-89页 |
6.3 并行求解技术 | 第89-90页 |
6.3.1 算法设计 | 第89页 |
6.3.2 算法实现 | 第89-90页 |
6.4 实验及分析 | 第90-94页 |
6.4.1 并行技术提高测试速度 | 第91-92页 |
6.4.2 路径空间独立拆分提高分支覆盖度 | 第92-94页 |
6.5 本章小结 | 第94-95页 |
第七章 总结与展望 | 第95-97页 |
7.1 总结 | 第95页 |
7.2 展望 | 第95-97页 |
致谢 | 第97-98页 |
参考文献 | 第98-104页 |
攻读硕士学位期间取得的成果 | 第104-105页 |