项目名称: 基于抽象内存模型的复杂类型测试用例生成方法研究
项目编号: No.61202080
项目类型: 青年科学基金项目
立项/批准年度: 2013
项目学科: 计算机科学学科
项目作者: 王雅文
作者单位: 北京邮电大学
项目金额: 23万元
中文摘要: 随着计算机系统的规模和复杂性急剧增加,计算机软件的开发成本以及由于软件故障而造成的生命财产损失也在不断增加,软件测试作为软件质量保证的重要手段越来越受到人们的重视。单元测试作为软件测试过程的重要环节,其自动化测试方法和理论的研究正在向纵深层次发展。复杂数据类型因其结构动态变化、约束关系复杂等特点使其测试用例的生成问题成为目前学术界研究的一大热点和难点。本课题从软件单元测试中复杂类型测试用例的自动生成问题着眼,建立统一的抽象内存模型来静态表示变量之间的结构和约束关系,提出完备的操作语义模拟算法,将实际操作语义映射为对抽象内存的操作,以便精确分析语句的上下文环境。在此基础上,提取路径中的符号约束表达式,分析非数值型约束构造出测试用例的形状,求解数值型约束得出数值域符号的取值,从而构造出测试用例。这一项目的成功实施,将有助于提高软件单元测试的自动化程度,提高软件测试的效率和软件质量水平。
中文关键词: 面向路径;复杂类型;抽象内存模型;操作语义;约束系统
英文摘要: With the drastic increasing of the scale and complexity of computer systems, the costs of software development and life and property losses caused by software faults increase correspondingly. Unit testing is an important sector of software testing, and its automatic testing methods and theory are developing in a deeper direction. Due to the dynamic structure and complicated constraint of complex types ,test case generation for them has become a hot spot as well as a difficult point for the academic circle. Starting with the automatic generating of test cases of complex types in software unit testing, this project establishes unified abstract memory models to express the structure and constraints between variables , proposes complete algorithms on different operator semantics, maps actual operator semantics on the operation of abstract memory models so as to analyze statically the change of context circumstances for different program points. With above foundation, the symbolic constraint expressions are extracted, the non-numeric expressions are analyzed and the outline of their test cases constructed, numeric expressions are solved to acquire the values of the numeric domain symbols, and finally test cases are constructed. The successful implementation of this project will facilitate the automation of software u
英文关键词: Path-wise;Complex Type;Abstract Memory Model;Operator Semantic;Constraint System