欢迎来到天天文库
浏览记录
ID:37536676
大小:3.12 MB
页数:101页
时间:2019-05-24
《(最新)(计算机科学与技术专业论文)uml测试技术的研究与实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、国防科学技术大学研究生院学位论文.第一章绪论随着信息技术的飞速发展,计算机已广泛应用于国民经济和国防建设中的许多重要领域,如:航空,航天、工业控制、交通、银行和军事指挥自动化系统等。这类应用对软件提出很高的质量要求,因为即使很小的软件错误也可能导致整个系统的崩溃,造成极大经济损失。如:1996年6月阿里亚娜火箭发射时因软件故障导致升空失败,使欧共体蒙受了25亿美元的损失。软件质量已成为制约计算机应用的主要因素之一。鉴于软件质量问题的重要性和追切性,人们提出各种方法和技术来提高软件质量,如形式化方法、面向对象方法和
2、软件铡试技术等。其中,以软件测试为中心的质量保障技术在软件生产实践中得到了迅速发展和应用,软件测试已成为保证软件质量的关键技术之一。它能够有效地发现软件中的任何故障。据统计,在软件开发成本中,软件测试的工作量往往占软件开发总工作量的40%以上。随着软件规模的不断扩大,软件测试在整个软件开发周期中所占比重日益增大。对于某些性命攸关的软件,其测试费用甚至高达所有其它软件工程阶段费用总和的三到五倍。§1.1立题背景由于面向对象技术具有易于设计、编程和重用等优点,使它得到广泛应用。与传统软件相比,面向对象技术的新特征,如
3、:方法重载、继承、信息隐蔽、多态和动态绑定等,虽然可以提高软件可读性和开发效率,但信息的分散性使得控制和数据跟踪更加复杂,增加了软件质量保证的难度.为测试带来了新的挑战fI}。目前,面向对象的研究主要集中于面向对象的需求分析、面向对象的开发方法和规范语言。由Rational公司牵头推出的标准建模语言UML(UnifiedModelinglanguage)脚是近年来软件工程领域约重要成果。它推动了面向对象软件开发的标准化进程,拓宽了研制与开发软件系统的适用范围。用UML进行面向对象软件的分析和设计建模.可以提高软件
4、质量,却不能保证软件的正确性,所开发的软件必须进行铡试。目前,对UML测试的研究还刚刚起步。现有测试技术的研究还存在许多不足,需要对其进行深入研究,以推动面向对象测试技术的实际应用。毒癯孽盈防科学技拳大学研究生院学位论文1.'.1软件测试技术发展回顾自计算机出现以来,程序编制和程序测试两个课题就同时摆在人们面前。当时测试程序的基本方法是将程序运行结果同手工计算结果进行H:较,以验证程序的正确性。60年代的软件危机导致了软件工程思想的提出。70年代初,提出了软件生存周期的概念,明确地将软件开发工作划分为若干步骤,并
5、规定需求分析、系统设计和实现阶段的目标。以及每个阶段生成的产品口】。由于程序中的错误不仅仅是由编码引起的,而且有可能是分析或者设计本身的问题,因此人们将软件测试的概念扩展到软件开发的各个阶段,从而使人们对软件测试的认识更加广泛和深刻.这对于软件产品的质量保障以及软件开发过程的组织具有重要的意义。1972年6月在美国北卡罗来纳大学召开了首次软件测试的正式会议。会后,软件测试的研究进入了一个重要时期。J.B.Goodenough和S.L.Gerhart【4l率先提出了软件测试的理论,从而把软件测试这一实践性很强的学科
6、提高到理论高度,被认为是测试技术发展过程中最具开创性的工作.W_E.Howdemp]修正了上述理论的缺陷。E.J.wbylll(e一‘1等加以进—步的补充和完善。这一期间,出现了路径测试、域测试、数据流测试、错误驱动测试以及状态铡试等技术.并开始研制相应的测试工具。80年代,软件质量问题成为软件工程领域关注的熟点.国际标准化组织制定了与软件测试相关的国际标准.如IEEE/ANSISTD.892规定了软件测试的文档标准,疆EE悄NslST【I.10t2规定了软件测试确认与验证计划标准,陋EE,^NSIS耵)-102
7、8规定了软件测试复查和审计标准等。90年代以来.随着面向对象技术豹广泛使用,原有的测试技术无法适用于面向对象软件,面向对象软件测试面临新的困难.为此,人们以传统测试技术为基础,结合面向对象软件的特点,对面向对象软件的测试技术进行研究,也取得了一些进展。当前,软件测试的研究工作主要集中于测试用例(testcase)(指为了-测试而设计的输入数据)的生成、铡试工具自动化、面向对象软件的潮试、分布对象软件的测试p]lSllfll”)等。现有的软件测试通常分为静态(sta矗c)测试和动态(dyadic)铡试.静态测试是指
8、在分析、检查和测试软件时不实际运行被铡试程序,如:审查、符号演算及验证。动态测试是指通过运行软件来检验软件的动态行为和运行结果的正确性。因此,动态测试必须包括被铡程序和用以运行软件的数据(称为铡试数据)li]。从选择或产生测试数据的来源署,动态潮试分为基于规范(specification-based)的测试(又称黑盒测试或功能测试)、基于程序(program-based)
此文档下载收益归作者所有