版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1
章、缺陷与测试概述
、
工程故障1.11.21.31.4质量与质量模型测试1.5测试
的基本素质测试是
工程的一个重要部分,是确保
工程质量的重要
。最近几年来,由于的不断增强,更由于工程的复杂度的工业化发展趋势,
测试得到广泛的重视。1.1、、、
工程、
工程的基本概念1.1.1计算机:是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合:在计算机的开发和过所遇到的一系列严重问题,生产与市场需求出现极不适应的严重现象工程:应用计算机科学、数学及管理科学等原理开发
的工程一个产品从形成概念开始,经过开发、测试、使用和 ,直到最后退出使用的全过程称为生存周期。生存周期根据 所处的状态,以及开发活动的目的和任务,可划分为若干个阶段。一般 生存周期包括开发、 测试、 使用与定义、等几个部分。1.1.2
工程的目标及其一般开发过程1.
定义可行性分析的任务是了解用户的要求及实现环境,从技术、经济和社会等几个方面研究并论证系统的可行性。需求分析的任务是确定所要开发
的功能需求、性能需求和运行环境约束,编制需求规格说明、
系统的确认测试准则。
的性能需求包括
的适应性、安全性、可靠性、可
性错误处理等。2.
开发开发是按照需求规格说明的要求,由抽象到具体,逐步生成
的过程。开发一般由设计、实现和测试等阶段组成。3.
测试需经过严密的测试,以发现在整个设计过
存在的问题并加以纠正。整个测试过程分单元测试、集成测试、系统测试以及验收测试四个阶段进行。测试的方法主要有白盒测试和黑盒测试。4.
使用和的使用是在
通过测试后,将安装在用户确定的运行环境中移交给用户使用。
的
是对
系统进行修改或对
需求变化做出反应的过程。1.1.3可供选择的过程模型开发过存在各种复杂因素,为了解决由此而带来的种种问题,开发者们经过多年的摸索,给出了多种实现工程的方式——
过程模型,如瀑布过程模型、螺旋过程模型和增量过程模型等。1.瀑布过程模型瀑布过程模型反映了人们早期对工程的认识水平,是人们所熟悉的一种线性思维的体现。瀑布过程模型强调阶段的划分及其顺序性、各阶段工作及其文档的完备性,是一种严格线性的、按阶段顺序的、逐步细化的开发模式,如图1-1所示。图1-1
瀑布过程模型2.螺旋过程模型螺旋过程模型的基本思路是,依据前一个版本的结果构造新的版本,这个不断重复迭代的过程形成了一个螺旋上升的路径,如图1-2所示。图1-2
螺旋过程模型3.增量过程模型有些时候可能会用一种几乎连续的过程小幅度地推进项目,这就是增量过程模型,如图1-3所示。增量……日历时间分析编码测试增量1交付客户设计分析设计编码测试增量2交付客户分析设计编码测试增量3交付客户分析设计编码测试增量n交付客户图1-3
增量过程模型4.快速原型过程模型快速原型过程模型首先是快速进行系统分析,在设计和用户的紧密配合下,快速确定系统的基本要求,尽快实现一个可运行的、功能简单的原型系统,然后通过对原型系统逐步求精,不断扩充完善得到最终的系统。1.2缺陷与
故障1.缺陷和缺陷是存在于故障(文档、数据、程序)之中的那些不希望或不可接受的偏差。其结果是
运行于某一特定条件时出现软件故障,这时称
缺陷被激活。故障是指
运行过
出现的一种不希望或不可接受的
状态,此时若无适当措施(容错)加以及时处理,便产生
失效。2.缺陷和故障案例兼容性问题1.2.迪斯尼公司狮子王航天局火星登陆事故跨世纪“千年虫”问题爱国者
防御系统“冲击波”计算机Windows
2000
中文输入法金山词霸出现的错误复杂性交流不够、交流上有误解或者根本不进行交流程序设计错误需求变化时间压力代码文档贫乏开发工具3.产生错误的原因1.3质量与质量模型质量是
的生命,它直接影响的使用与
。
通常
质量由以下几方面进行评价。①
需求是衡量
质量的基础,不符合需求的
就不具备质量。设计的应在功能、性能等方面都符合要求,并能可靠地运行。②
结构良好,易读、易于理解,并易于修改、
。③
系统具有友好的用户界面,便于用户使用。④
生存周期中各阶段文档齐全、规范,便于配置、管理。的质量因素很多,如正确性、精确性、可靠性、容错性、性能、效率、易用性、可理解性、简洁性、可复用性、可扩充性、兼容性等。质量因素也称为质量特性,反的质量,映了质量的本质。
一个问题最终要归结到定义的质量特性。面对众多的质量因素如何取折衷,这实际上就是区分质量因素对质量影响程度轻重的问题,这个问题已经有了解决方案,即质量模型。图1-4所示为McCall
质量模型,质量模型中的质量概念基于11个特性之上,这11个特性分别面向产品的运行、修正、转移。图1-4
McCall质量模型图1-5所示为ISO/IEC9126-1991标准规定的质量度量模型。它由3层组成,其中第1层称为质量特性,第2层称为质量子特性,第3层称为度量。软件质量质量特性质量子特性度量功能性适合性准确性互操作性依从性安全性可靠性成熟性容错性易恢复性可使用性易理解性易学习性易操作性效率时间特性资源特性可性易分析性稳定性易变更性易测试性可移植性适应性易安装性遵循性易替换性度量由使用单位自行决定图1-5
ISO质量度量模型图1-6所示为新的ISO/IEC
9126
质量模型,
质量包括“
质量”
、“外部质量”和“使用质量”三部分。图1-6
新的ISO/IEC
9126质量模型观点出发的软质量需求被所谓的
质量是从件产品特性的总体,是针对测量和评价的质量。质量特征主要包括:可性、灵活性、可移植性、可重用性、可读性、可测试性、可理解性。外部质量的定义是:产品在规定条件下使用时满足需求的程度。外部质量是从外部观点出发的产品特性的总体,它是当执行时,更典型地是使用外部度量在模拟环境中,用模拟数据测试时,所被测量和评价的质量,即在预定的系统环境中运行时可能达到的质量水平。外部质量特征主要包括:正确性、可用性、效率、可靠性、完整性、适应性、精确性、坚固性。下使用质量的定义是:在规定的使用环境产品使特定用户在达到规定目标方面的能力。它是从用户观点出发,来看待产品用于特定环境和条件下的质量,反映的是从用户角度看到的产品在适当系统环境下满足其需求的程度。使用质量用以下质量特征表述:有效性、生产率、安全性、满意程度等。1.4测试1.4.1
测试的定义及目的简单地说, 测试就是为了发现错误而执行程序的过程。在IEEE
工程标准术语中,测试被定义为:“使用人工和自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清楚预期结果与实际结果之间的差别。”测试是与质量密切联系在一起的,归根结底,测试是为了保证质量。测试是一个找错的过程。
测试的过程亦是程序运行的过程。程序运行需要数据,为测试设计的数据称为测试用例。测试用例的设计原则是尽可能
程序中的错误。是由人来完成的,所有由人做的工作都不会是完美无缺的。 开发是个很复杂的过程,期间很容易产生错误。无论是软件从业
、 和学者做了多大的努力,错误仍然存在。因而大家也得到了一种共识: 中残存着错误,这是属性,是无法改变的。所以通常说的一种测试的目的就是为了发现尽可能多的缺陷,并期望通过改错来把缺陷统统消灭,以期提高软件的质量。一个成功的测试用例在于发现了至今尚未发现的缺陷。测试的目的是以最少的人力、物力和时间找出
中潜在的各种错误和缺陷,通过修正各种错误和缺陷提高量,回避
发布后由于潜在的质缺陷和错误造成的隐患所带来的商业风险。1.4.2
测试的原则所有的测试都应追溯到用户需求把“尽早和不断地测试”作为开发者的座右铭程序员应该避免检查自己的程序,测试工作应该由独立的专业的 测试机构来完成pareto原则设计测试用例时,应该考虑各种情况对测试错误结果一定要有一个确认的过程制定严格的测试计划完全测试是不可能的,测试需要终止注意回归测试的关联性妥善保存一切测试过程文档1.4.3
测试模型测试过程模型是对测试过程一种抽象,用于定义
测试的流随着测试过程管理的发展,方法。测试通过实践总结出了很多很好的测试过程模型。这些模型将测试活动进行了抽象,并与开发活动有机的进行了结合,是测试过程管理的重要参考依据。1.V模型V模型是最具有代表意义的测试模型,反映出了测试活动与分析设计活动的关系。V模型
,单元和集成测试应检测程序的执行是否满足
设计的要求;系统测试应检测系统功能、性能的质量特性是否达到系统要求的指标;验收测试确定
的实现是否满足用户需要或合同的要求。图1-7测试V模型2.W模型W模型由两个V字型模型组成,分别代表测试与开发过程。W模型强调:测试伴随着整个
开发
周期,而且测试的对象不仅仅是程序,需求、设计等同样要测试,也就是说,测试与开发是同步进行的。图1-8测试W模型3.H模型H模型将测试活动完全独立出来,形成了一个完全独立的流程,将测试准备活动和测试执行活动清晰地体现出来。H模型揭示了测试是一个独立的流程,贯穿产品整个生命周期,与其他流程并发地进行。图1-9测试H模型4.其他模型除上述几种常见模型外,还流传着其他几种模型,例如X模型、前置测试模型等。X模型提出针对单独的程序片段进行相互分离的编码和测试,此后通过频繁的交接,通过集成最综
为可执行的程序。前置测试模型体现了开发与测试的结合,要求对每一个交付内容进
试。1.4.4
测试的分类按测试方式分类静态测试动态测试按测试方法分类白盒测试黑盒测试3.按测试过程分类单元测试集成测试系统测试验收测试4.按测试目的分类功能测试健壮性测试接口测试性能测试强度测试压力测试用户界面测试安全测试可靠性测试安装/反安装测试文档测试恢复测试兼容性测试1.4.5测试流程测试流程就是指从测试开始到测试结束经过的一系列准备、执行、分析的过程。测试工作一般要通过制订测试计划、设计测试、测试准备和测试环境的建立、执试、评估测试和总结测试工作等几个阶段来完成。图1-10测试流程测试流程测试计划测试设计测试准备和测试环境的建立执
试测试评估测试总结1.4.6测试发展历趋势测试是伴随着的产生而产生的,有了的生成和运行就必然有 测试。在早期的开发过,测试的含义比较窄,将测试等同于“调试”,目的是纠正软件中已经知道的故障,常常由开发自己完成这部分工作。对测试的投入极少,测试介入得也晚,常常是等到形成代码,产品已经基本完成时才进试
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 咖啡店室内装修施工方案
- 月经周期管理中的痛经调理方案
- 初中语文教学方法总结与思考
- 市政工程施工安全与文明管理方案
- 造价咨询行业风险管理制度
- 展览会空调系统应急响应预案
- 智能制造财务会计制度案例分析
- 企业员工心理健康安全协议书
- 屋面防水与节能技术方案
- 二年级英语班级活动方案
- 2023-2024学年福建省厦门市七年级上册期中语文模拟试题(附答案)
- 雪人(无字)-儿童故事绘本
- 手持电动工具安全检查表
- 《火灾发展及危害》课件
- 《车路协同技术》课件
- 口腔医院口腔种植病历全
- LT9800对讲机说明书学习资料
- 新食品安全法全文
- 移动电源生产流程图
- 天津市基本医疗保险意外伤害首诊报告卡
- 北京市第十届迎春杯小学数学竞赛决赛试卷
评论
0/150
提交评论