软件测试基础第1章软件测试概论.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第1章 软件测试概论         1.1 软 件 1.1.1 软件发展史   软件的发展经历了如下几个阶段:   第一阶段从20世纪50年代初期至60年代中期,这一阶段又称为程序设计阶段。此时硬件已经通用化,而软件的生产却是个体化。软件产品为专用软件,规模较小,功能单一,开发者即为使用者,软件只有程序,无文档。软件设计在人们的头脑中完成,形成了“软件等于程序”的错误观念。   第二阶段从20世纪60年代中期至70年代末期,称为程序系统阶段。此时多道程序设计技术、多用户系统、人机交互技术、实时系统和第一代数据库管理系统的出现,催生了专门从事软件开发的“软件作坊”,软件广泛应用,但软件技术和管理水平相对落后,导致“软件危机”出现。软件危机主要表现在以下几个方面:   (1) 软件项目无法按期完成,超出经费预算,软件质量难以控制;   (2) 开发人员和开发过程之间管理不规范,约定不严密,文档书写不完整,使得软件维护费用高,某些系统甚至无法进行修改;   (3) 缺乏严密、有效的质量检测手段,交付给用户的软件质量差,在运行中出现许多问题,甚至产生严重的后果;   (4) 系统更新换代难度大。   第三阶段从20世纪70年代末期至80年代中期称为软件工程阶段。微处理器的出现及分布式系统的广泛应用,使得计算机真正成为大众化的东西。以软件的产品化、系列化、工程化和标准化为特征的软件产业发展起来,软件开发有了可以遵循的软件工程化的设计准则、方法和标准。1968年,北大西洋公约组织的计算机科学家在联邦德国召开国际会议,会议讨论了软件危机问题,正式提出并使用“软件工程”概念。这标志着软件工程的诞生。   第四阶段从20世纪80年代中期至今,客户端/服务器(C/S)体系结构,特别是Web技术和网络分布式对象技术的飞速发展,导致软件系统体系结构向更加灵活的多层分布式结构演变,CORBA、EJB、COM/DCOM等三大分布式的对象模型技术相继出现。   2006年提出的面向服务架构(Service-Oriented Architecture,简称SOA)作为下一代软件架构,是一种“抽象、松散耦合和粗粒度”的软件架构,根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用,主要用于解决传统对象模型中无法解决的异构和耦合问题。 1.1.2 软件生命周期   软件生命周期具有如下六个阶段:   (1) 问题的定义及规划。此阶段由软件开发方与需求方共同讨论,确定软件的开发目标及其可行性。   (2) 需求分析。在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。需求分析阶段作为一个很重要的阶段,在整个软件开发过程中是不断变化和深入的,因此必须制定需求变更计划来应付这种变化,以保护整个项目的顺利进行。   (3) 软件设计。此阶段主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计、数据库设计等。软件设计一般分为总体设计和详细设计。   (4) 程序编码。此阶段是将软件设计的结果转换成计算机可运行的程序代码。程序编码必须符合标准的编写规范,以保证程序的可读性、易维护性,提高程序的运行效率。   (5) 软件测试。在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。整个测试过程分为单元测试、组装测试以及系统测试等阶段。测试的方法主要有白盒测试和黑盒测试两种。在测试过程中需要建立详细的测试计划并严格按照测试计划进行测试,以减少测试的随意性。   (6) 运行维护。软件维护是软件生命周期中持续时间最长的阶段。在软件开发完成并投入使用后,由于多方面的原因,软件有可能不适应用户的要求,要延续软件的使用寿命,此时就必须对软件进行维护。 1.1.3 软件缺陷   1. 软件缺陷案例   让我们回顾一些“臭名昭著”的软件缺陷案例,它们都是由于软件测试不充分而导致的严重问题。   1963年,由于用FORTRAN程序设计语言编写的飞行控制软件中的循环语句“DO 5 I=1,3”误写为“DO 5 I=1.3”,结果导致美国首次金星探测飞行失败,造成价值约1000多万美元的损失。   1979年,新西兰航空公司的一架客机因计算机控制的自动飞行系统发生故障而撞在阿尔卑斯山上,机上257名乘客全部遇难。   1983年,美国科罗拉多河水泛滥,但由于计算机对天气形势预测有误,水库未能及时泄洪,以致造成严重的经济损失和人员伤亡。   1990年1月15日,通信中转系统软件发生故障,导致主干远程网大规模崩溃,使数以千计的电信运营公司损失惨重。   1992年10月26日,伦敦救护中心的计算机辅助发送系统刚启动就崩溃了,导致这个全世界最大的(每天要接运五千多名病人)救护机构全部瘫痪。   1994年

文档评论(0)

autohhh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档