第01章 软件测试概述解析.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第1 章 软件测试概述 随着计算机技术的飞速发展,人们对计算机的需求和依赖与日俱增。随之而来的是计算机系统的规模和复杂性急剧增加,其软件开发成本以及由于软件故障而造成的经济损失也正在增加,软件质量成为人们共同关注的焦点。巨额的财产损失和多条生命的代价让开始重视软件质量。 随着信息技术的飞速发展,软件产品应用到社会的各个领域,软件质量成为人们共同关注的焦点。软件开发商为了占有市场,必须把质量作为企业的重要目标之一,以免在激烈的竞争中被淘汰出局。用户为了保证自己业务的顺利完成,当然希望选用优质的软件。质量佳的软件产品不仅会使开发商的维护费用和用户的使用成本大幅增加,还可能产生其他的责任风险,造成公司信誉下降。在一些关键如民航订票系统、银行结算系统、证券交易系统、自动飞行控制软件、军事防御和核电站安全控制系统中使用质量的软件,还可能造成灾难性的后果。对于软件来讲,不论采用什么技术和方法,软件中会有采用新的语言、先进的开发方式、完善的开发过程,可以减少的引入,但是完全杜绝软件中的这些需要测试来,软件中的密度也需要测试来估计。 单元测试是测试执行的开始阶段,即首先对每一个程序模块进行单元测试,以确保每个模块能正常工作。单元测试大多采用白盒测试方法,尽可能发现并消除模块内部在逻辑和功能上的故障及缺陷。然后,把已测试过的模块组装起来,形成一个完整的软件后进行集成测试,以检测和排除与软件设计相关的程序结构问题。集成测试大多采用黑盒测试方法来设计测试用例。确认测试以规格说明书规定的需求为尺度,检验开发的软件能否满足所有的功能和性能要求。确认测试完成以后,给出的应该是合格的软件产品。但为了检验开发的软件是否与系统的其它部分(如硬件、数据库及操作人员)协调工作,还需进行系统测试。最后进行验收测试,以解决开发的软件产品是否符合预期要求,用户是否接受等问题。 1. 单元测试 单元测试是在软件开发过程中进行的最低级别的测试活动便发现模块内部的在传统的结构化编程语言中比如C,单元测试的一般是函数或子过程。在C++这样的面向对象的语言中,单元测试的类。对Ada语言,单元测试可以在独立的过程和函数,在Ada包的级别上进行。单元测试的原则同样扩展到第四代语言(4GL)中,单元被典型地为一个菜单或显示界面。测试对象是软件设计的最小单位在工作中,单元测试和代码编写所花费的精力大致相同。经验表明单元测试,并且修改它们的成本也很低。在软件开发的后期阶段,发现并修将变得更加困难,大量的时间和费用。有效的单元测试是全局质量的一部分在经过测试单元,系统集成过程将会大大地简化开发人员可以将精力集中在单元之间的交互作用和全局的功能实现上,而不是陷入充满的单元之中不能自拔。时常有这样的情况发生,每个模块都能单独工作,但这些模块后却不能正常工作。原因模块相互调用时引入新问题例如数据可能丢失;一个模块对另一模块可能影响;几个子功能组合起来不能实现主功能;误差不断积累达到不可接受的程度;全局数据结构出现错误等。测试是按设计要求把通过单元测试的各个模块组装在一起,与接口有关的各种。这种方法容易出现混乱。因为测试时可能发现一大堆错误,为每个定位和纠正非常困难,并且在一个的同时又可能引入新的,新旧混杂,难断定出错的原因和位置。与之相反的是增量式集成方法在软件集成阶段,测试的复杂程度远远超过单元测试。类比一下,假设要清洗一台已经完全装配好的食物加工机器无论你喷了多少水和清洁剂,一些食物的小碎片还是会粘在机器的死角,只有任其腐烂并等待以后再想办法。但如果这台机器是拆开的,这些死角也许就不存在或者更容易接触到,并且每一部分都可以毫不费力进行清洗。的一个重要组成部分,与系统中其它,进行一系列系统集成和测试验收测试可以类比为建筑的使用者来对建筑进行的检测。首先,他认为这个建筑是满足规定的工程质量的,这是有建筑的质检人员来保证。使用者关注的重点是住在这个建筑的中的感受。建筑的外观是否美观、各个房间的大小是否合适,窗户的位置是否合适,是否能够满足家庭的需要。这里,建筑的使用者执行的就是验收测试。Windows 2000 Server大约有6000人参与。显然,一个软件产品的开发过程与计算机程序爱好者编写个小程序的过程是完全不同的。正规的软件开发过程一般包括制定计划、需求分析、设计、程序编码、测试及运行维护六个阶段,即: 第一阶段 计划 第二阶段 需求分析 第三阶段 设计 第四阶段 程序编写 第五阶段 测试 第六阶段 运行和/维护 这六个阶段构成了软件的生存周期。以下给出各阶段的主要任务: (1)计划(第一阶段) 确定软件开发的总目标。设想软件的功能、性能、可靠性以及接口等方面的要求。研究完成该项软件任务的可行性,探讨解决问题的方案;对可供开发使用的资

文档评论(0)

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

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

1亿VIP精品文档

相关文档