中国科学院软件研究所机构知识库
Advanced  
ISCAS OpenIR  > 中科院软件所  > 中科院软件所
题名:
软件测试的自动分析工具
作者: 王晓旭
答辩日期: 2001
专业: 计算机软件与理论
授予单位: 中国科学院软件研究所
授予地点: 中国科学院软件研究所
学位: 博士
关键词: 静态分析 ; 路径覆盖 ; 前置条件 ; 不可行路径 ; 测试数据生成 ; 约束求解 ; 扩展的有限状态自动机
摘要: 随着软件技术的发展,程序的规模逐渐增大,复杂度也逐渐增加。在软件的开发过程中,完全依靠人力进行分析测试效率太低,而且不能保证软件质量。测试过程中的一个主要问题是生成具有一定覆盖度的测试数据。如果有一种工具能自动地分析程序并且生成测试数据,将大大地提高软件的可靠性并且节约大量的人力。目前自动生成测试数据的工具已有很多,但是大多数都有一定的局限性,不能完全自动地生成测试数据,所能处理的数据类型也有限。采用路径覆盖的方法生成程序的测试实例时,自动生成的路径大部分是不可执行的,不仅占用了大量的资源,而且大在降低了自动工具的实际应用价值。利用约束求解的工具可以排除不可行路径,最终求出的输入数据能够使程序沿着一条路径正常执行。本文中的主要工作有:1.工具PAT的实现;工具PAT能够自动的求出一条路径的前置条件。通过求解前置条件可以判断路径的可执行性,还可以求出使程序沿着该条路径运行的输入数据。数组一直是同类问题中的难点,本文中提出了两种处理数组的方法,能够很好的分析含有有限大小数组的程序。2.工具EFAT的实现;EFAT在扩展的有限状态机(EFSM)的基础上自动生成程序中的所有可行路径,求出一组路径覆盖的测试数据。PAT和EFAT能接受多种数据类型,包括整型、布尔型、浮点型、枚举型变量和有限大小的数组。
英文摘要: With the rapid development of software technology, programs become large and more complex. During software development process, most programmers analyze and test programs manually. This is time consuming and cannot ensure good quality of software product. If there is a tool that can analyze program and generate test cases automatically, the reliability of software will be improved dramatically and considerable resources will be saved. For that purpose many tools have been developed. However, few of them can really generate test cases "automatically". Moreover, the variable types they can handle are quite limited. Most of the paths generated to satisfy path coverage are infeasible. Those infeasible paths not only take up a lot of resources, but also make the tool unpractical. We eliminate all the infeasible paths with a constraint solver. For a feasible path, values of input variables can be found such that the program is executed along that path. The main work of this thesis include: 1. Implementation of tool PAT PAT can deduce the predicates of a path automatically. By solving predicates the feasibility of a path can be decided and the input data making the program follow this path will be generated. This thesis also introduces two kinds of methods for dealing with fixed-size arrays, which is quite challenging. 2. Implementation of tool EFAT EFAT, which is based on extended finite state machines(EFSM), can automatically generate feasible paths and a suite of test cases under path coverage. PAT and EFAT accept several data types, such as integers, Booleans, floats, enumerates and fixed-size arrays.
语种: 中文
内容类型: 学位论文
URI标识: http://ir.iscas.ac.cn/handle/311060/5736
Appears in Collections:中科院软件所

Files in This Item:
File Name/ File Size Content Type Version Access License
LW004469.pdf(1792KB)----限制开放-- 联系获取全文

Recommended Citation:
王晓旭. 软件测试的自动分析工具[D]. 中国科学院软件研究所. 中国科学院软件研究所. 2001-01-01.
Service
Recommend this item
Sava as my favorate item
Show this item's statistics
Export Endnote File
Google Scholar
Similar articles in Google Scholar
[王晓旭]'s Articles
CSDL cross search
Similar articles in CSDL Cross Search
[王晓旭]‘s Articles
Related Copyright Policies
Null
Social Bookmarking
Add to CiteULike Add to Connotea Add to Del.icio.us Add to Digg Add to Reddit
所有评论 (0)
暂无评论
 
评注功能仅针对注册用户开放,请您登录
您对该条目有什么异议,请填写以下表单,管理员会尽快联系您。
内 容:
Email:  *
单位:
验证码:   刷新
您在IR的使用过程中有什么好的想法或者建议可以反馈给我们。
标 题:
 *
内 容:
Email:  *
验证码:   刷新

Items in IR are protected by copyright, with all rights reserved, unless otherwise indicated.

 

 

Valid XHTML 1.0!
Copyright © 2007-2017  中国科学院软件研究所 - Feedback
Powered by CSpace