Institutional Repository
| C语言程序测试数据生成与死循环检测研究 | |
| 阮辉 | |
| 导师 | 张健 |
| 2009-06-05 | |
| 学位授予单位 | 中国科学院软件所 |
| 学位 | 硕士 |
| 学位授予地点 | 软件所5号楼 |
| 关键词 | 自动软件测试 |
| 摘要 | 软件测试是保证软件质量的重要手段. 随着软件技术的发展, 软件的规模越来越大, 程序的复杂度也逐渐增加. 软件测试也由原来的人工操作逐渐走向自动化. 自动化软件测试已经成为国内外软件工程研究的热点之一. 本文研究了自动软件测试中的两个问题, 它们分别属于自动测试数据生成和错误查找两方面. 主要贡献如下: 本文提出了一种对含有字符串和字符串函数调用的C语言程序自动生成测试数据的方法. 具体做法是将C语言程序中的字符变量看成是取值范围在0~255之间的整数, 并使用字符数组来表示字符串, 同时将字符串函数建模成一阶逻辑公式和赋值语句. 通过使用前置条件和后置条件来描述函数调用语句, 将程序中的字符串函数调用语句替换成逻辑公式和赋值语句, 之后使用路径分析技术自动生成程序的测试数据. 此外, 本文还实现了一个自动化工具, 能够为真实的C程序自动生成测试数据. 另一方面, 本文还提出了一种自动检查程序中是否含有死循环的方法. 该方法基于静态代码分析, 结合了循环展开和路径可行性分析技术. 具体做法是首先通过遍历控制流图生成待查循环的检验路径, 之后通过分析检验路径的可行性以及路径之间的联系, 判断这些路径是否符合死循环模式. 在此基础上, 本文实现了原型工具, 并对一组基准程序进行测试. 实验结果表明, 工具能高效地检测出C语言程序中的死循环, 准确率较高. 工具的自动化程度较高, 能处理复杂的控制流以及嵌套的循环. |
| 学科领域 | 计算机科学技术基础学科其他学科 |
| 语种 | 中文 |
| 内容类型 | 学位论文 |
| URI标识 | http://ir.iscas.ac.cn/handle/311060/77 |
| 专题 | 基础软件与系统重点实验室 |
| 推荐引用方式 GB/T 7714 | 阮辉. C语言程序测试数据生成与死循环检测研究[D]. 软件所5号楼. 中国科学院软件所,2009. |
| 条目包含的文件 | ||||||
| 文件名称/大小 | 文献类型 | 版本类型 | 开放类型 | 使用许可 | ||
| thesis.ruanh.pdf(771KB) | 开放获取 | 使用许可 | 请求全文 | |||
| 个性服务 |
| 推荐该条目 |
| 保存到收藏夹 |
| 查看访问统计 |
| 导出为Endnote文件 |
| 谷歌学术 |
| 谷歌学术中相似的文章 |
| [阮辉]的文章 |
| 百度学术 |
| 百度学术中相似的文章 |
| [阮辉]的文章 |
| 必应学术 |
| 必应学术中相似的文章 |
| [阮辉]的文章 |
| 相关权益政策 |
| 暂无数据 |
| 收藏/分享 |
除非特别说明,本系统中所有内容都受版权保护,并保留所有权利。
修改评论