第1章软件测试概述ppt课件

上传人:我*** 文档编号:149209890 上传时间:2020-10-25 格式:PPT 页数:35 大小:702KB
返回 下载 相关 举报
第1章软件测试概述ppt课件_第1页
第1页 / 共35页
第1章软件测试概述ppt课件_第2页
第2页 / 共35页
第1章软件测试概述ppt课件_第3页
第3页 / 共35页
第1章软件测试概述ppt课件_第4页
第4页 / 共35页
第1章软件测试概述ppt课件_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《第1章软件测试概述ppt课件》由会员分享,可在线阅读,更多相关《第1章软件测试概述ppt课件(35页珍藏版)》请在金锄头文库上搜索。

1、软件测试,第1章 软件测试概述,目录,项目,教学文档平台项目,4个人开发,代码量8万行,如何测试? 2012年奥运会的售票系统网站如何测试? 神州9号飞船,如何测试?,软件缺陷例子1,事件 1996年6月4日,Arane5发射40秒后爆炸。 原因 将一个64位浮点值转换为16位有符号整数值时,超出了16位整数的表示范围,而这个异常未得到正确解决,软件缺陷例子2,事件 1999年; 火星气象卫星(Mars Climate Orbiter)到达火星之后不久就消失; 火星极地登陆者(Mars Polar Lander)在火星上着陆时坠毁 原因 地面系统软件和飞行器上软件分别使用公制和英制两种单位。,

2、2007年5月18日 ,诺顿杀毒软件升级最新的病毒库后,会把简体中文版 Windows XP的关键系统文件当作病毒清除,重启后系统将会瘫痪。,软件缺陷例子3,2008年,北京奥运门票售票系统开通不到半小时,系统瘫痪。,软件缺陷例子4,2008年神舟七号宇宙飞船: 测试用例3万多。确保稳定,确保万无一失。 基本消除缺陷,计算器的例子,计算器说明书:该计算器将准确无误地进行加、减、乘、除运算。计算器不会出现崩溃、死锁或停止反应。 (1)2+3,没有反应? (2)随意敲击键盘后,没有了反应? (3)还能计算某数的平方根 (4)因为电池没有电,所以计算错了 (5)按键很小、显示屏看不清楚,软件缺陷,1

3、、什么是软件缺陷? (1)软件未达到产品说明书中已经标明的功能; (2)软件出现了产品说明书中指明不会出现的错误; (3)软件未达到产品说明书中虽未指出但应当达到的目标; (4)软件功能超出了产品说明书中指明的范围; (5)软件测试人员认为软件难以理解、不易使用,或者最终用户认为该软件使用效果不良。,2、为什么会产生软件缺陷?,(1)产品需求说明书 (2)设计方案 (3)编写代码 (4)其他 图1-1 软件缺陷产生的原因分布,3、软件缺陷修复的费用,软件在从需求、设计、编码、测试一直到交付用户公开使用后的过程中,都有可能产生和发现缺陷。随着整个开发过程的时间推移,更正缺陷或修复问题的费用呈几何

4、级数增长。,The cost are logarithmic,$1,$10,$100,specification,design,code,release,$1000+,历史,二十世纪70年代以前;边想边测试。 70年代末80年代中期;基础理论已经形成。 80年代末90年代中期;测试工具在质量和数量上不断增长,测试自动化开始广泛应用。 90年后期;关注有效的过程程管理对软件测试的重要性,形成各种测试模型。 二十一世纪初; 软件开发活动应该以测试为主导的思想。随着软件测试分工的细化和成熟,促使大量的软件测试服务机构涌现,从单一第三方测试到参与整个软件过程的测试服务。,两种观点,测试是为了证明程序无

5、错误; 测试是为了证明程序有错; G. Myers提出软件测试是为了发现错误而执行程序的过程。 Bill Hetzel提出了测试的目的不仅仅是为了发现软件缺陷与错误,而且也是对软件质量进行度量和评估,以提高软件的质量。,保证程序和相应的规范说明一致。 发现软件中的缺陷。 确保软件不做不必要的事情。 确保系统合理地执行。 确保系统失败前可以让系统运行到何种程度 确保发布给用户的系统中有哪些风险。 ISO9000定义:测试是一种基于机器的,对代码执行测试,确认测试的活动 。,软件测试定义?,常见概念,1983年IEEE(Institute of Electrical and Electronics

6、 Engineers)国际电子电气工程师协会提出的软件工程标准术语中给软件测试下的定义是:使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。 我们把软件测试定义为在程序中找出故障的过程,使测试成为可以做到的任务,从而克服了心理上存在的问题。因此,对软件测试人员而言,测试的最好定义是:软件测试是为了发现错误而执行程序的过程。,软件测试定义,完整定义 软件测试是发现并指出软件(包含软件经过建模、需求、设计等阶段所产生的大量输出工件及程序代码)中存在缺陷的过程,这个过程指明和标注问题存在的正确位置,详细记录导致问题出现的操作步骤,及

7、时存储当时的错误状态,以上组合在一起便于测试后问题能够准确再现。,软件测试模型,零售店里的服装模特是一个模型 会计的公式:资产=债务+所有者权益也是一个模型 模型是对现实的抽象概括,对某些真实事件的简化表征。,“V ”模型,“V ”模型,V模型:20世纪80年代后期,Paul Rook提出了著名的软件测试的V模型,是瀑布模型的变种,它反映了测试活动与分析和设计的关系,非常明确的表明了测试过程中存在的不同级别,以及各测试阶段与开发过程中的各阶段的对应关系,图中的箭头代表了时间方向,左边下降的是开发各阶段,右边上升的是测试过程的各个阶段。,“V ”模型,V模型指出: 单元测试和集成测试应检测程序的

8、执行是否满足软件设计的要求; 系统测试应检测系统功能,性能的质量特性是否达到系统要求的指标; 验收测试确定软件的实现是否满足用户需要或合同的要求.,“V ”模型,V模型的缺陷 仅仅把测试过程作为在需求分析、系统设计及编码之后的一个阶段 忽视了测试对需求分析,系统设计的验证,一直到后期的验收测试才被发现。,“W”模型,Evolutif公司提出了W模型的概念,增加了软件各开发阶段中应同步进行的验证和确认活动,明确了测试与开发的并行性.,“W”模型,W模型,测试伴随着整个软件开发周期 测试的对象不仅仅是程序,需求、设计和功能同样要测试 根据W模型的要求,一旦有文档提供,就要及时确定测试的条件、编写测

9、试用例,W模型的局限性,在W模型中,需求、设计、编码等活动被视为串行的,同时,测试和开发活动也保持着一种线性的前后关系,上一阶段完全结束,才可正式开始下一个阶段工作。 无法支持迭代、自发性以及变更调整。,H模型,这个示意图仅仅演示了在整个生产周期中某个层次上的一次测试“微循环”。图中的其他流程可以是任意开发流程。,H模型,软件测试不仅仅指测试的执行,还包括很多其他的活动。 软件测试是一个独立的流程,贯穿产品整个生命周期,与其他流程并发的进行。 软件测试要尽早准备,尽早执行。 软件测试是根据被测物的不同而分层进行的。不同层次的测试活动可以按照某个次序先后进行的,但也可能是反复的。,软件工程与软件测试的关系,测试在开发阶段的作用如下: (1)项目规划阶段:负责从单元测试到系统测试的整个测试阶段的监控。 (2)需求分析阶段:确定测试需求分析、系统测试计划的制定。其中,测试需求分析是对产品生命周期中测试所需求的资源、配置、每阶段评判通过的规约;系统测试计划则是依据软件的需求规格说明书,制定测试计划和设计相应的测试用例。 (3)概要设计和详细设计阶段:确保集成测试计划和单元测试计划完成。 (4)编码阶段:由开发人员进行自己负责部分的测试代码。,软件工程与软件测试的关系,Thank You !,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号