测试复习详解_第1页
测试复习详解_第2页
测试复习详解_第3页
测试复习详解_第4页
测试复习详解_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、复习(fx)共七十一页软件(run jin)的基本概念能够完成预定功能和性能的、可执行的指令(计算机程序);使得程序能够适当地操作信息的数据结构;描述程序的操作和使用的文档。软件(run jin) = 程序 + 数据 (库) + 文档 + 服务共七十一页软件(GB/T 11457-1995 2.433)与计算机系统的操作有关的程序、规程、规则,以及可能(knng)有的文件、文档及数据与计算机系统的操作有关的程序、规程、规则及任何与之有关的文档。软件产品是指定交付给用户的软件实体共七十一页软件(run jin)质量管理内容 基本概念软件(GB/T 11457-1995 2.433)与计算机系统的

2、操作有关的程序、规程、规则,以及可能有的文件、文档及数据与计算机系统的操作有关的程序、规程、规则及任何与之有关的文档。软件产品是指定交付给用户的软件实体质量:软件质量GB/T 11457-2006 :软件产品中能满足给定需要的性质和特性的总体软件具有(jyu)所期望的各种属性的组合程度顾客和用户觉得软件满足其综合期望的程度确定软件在使用中将满足顾客预期要求的程度软件质量管理共七十一页软件缺陷是什么(shn me)(续)软件缺陷的构成(guchng)共七十一页软件缺陷是什么(shn me)(续)软件缺陷修复(xif)的成本共七十一页软件质量(zhling)模型McCall 质量(zhling)模

3、型Boehm质量模型ISO/IEC9126质量模型共七十一页McCall 质量(zhling)模型1977年McCall 及其同事影响质量因素的分类:操作特性(产品运行)承受可改变(gibin)能力(产品修订)新环境适应能力(产品变迁)正确性 可靠性 可用性 完整性 功效运行修订变迁可移植性可复用性可操作性可维护性灵活性可测试性共七十一页Boehm质量(zhling)模型1978年,Boehm及同事提出(t ch)分层结构的模型。用户期望和需要硬件特性功能最初要求的功能可靠性效率人类工程学自包含精确性完备性完整性一致性可说明性设备效率可访问性通信性自描述性结构性简明性易读性可扩充性设备独立性可

4、移植性可测试性可理解性可修改性可维护性共七十一页ISO/IEC9126质量(zhling)模型20世纪90年代早期(zoq)软件产品评价质量模型内部质量模型使用中质量模型外部质量模型质量特性(6个)和子特性(21个)质量特性:功能性、可靠性、易用性、效率、维护性和可移植性子特性:适合性、准确性、共七十一页共七十一页 瀑布模型即软件生命周期模型,是软件工程的典型模型。软件生命周期的各个阶段如同瀑布流水般逐级下落,形成自上而下,相互衔接的固定次序瀑布模型采用结构化方法开发,包括结构化分析、结构化设计、结构化程序设计和结构化测试方法。瀑布模型是一次开发就将一个包含全部功能的产品交付用户(yngh)使

5、用。共七十一页快速原型(yunxng)模型快速建立一个只包括核心功能(gngnng)并可在计算机上运行的程序(原型)。用户通过使用这个原型,提出进一步的需求,开发人员按照用户意见快速修改原型系统,然后再次请用户试用,直到得到明确完整的需求,按照这个最后的需求开发出的系统可以满足用户的真实需求。优点是保证用户的真实需求得到满足.特点是用户一直参与,不断改进,系统边做边改。原型的用途是获知用户的真正需求,一旦需求确定了,原型将被抛弃。共七十一页7. 软件(run jin)生存周期原型模型 共七十一页又称演化模型:用主动的正常的迭代避免被迫的不正常的反复原型(prototype) :可以演示的试验性

6、产品、重点为系统功能、用户界面必要性、可行性:并非所有需求都可以精确定义项目参加者之间存在(cnzi)通信障碍已有快速原型开发工具恰当使用原型法可以减少软件总成本原型法分类验证软件需求的原型:垂直原型、水平原型验证设计方案的原型演进出目标系统的原型软件重用技术、RAD共七十一页快速应用(yngyng)开发(RAD) V模型共七十一页增量(zn lin)模型增量模型也称渐增模型,把软件产品作为一系列的增量构件来设计、编码、集成(j chn)和测试。增量模型从一组给定的需求开始,通过构造一系列的可执行工作版本来实施开发活动 ,每一个工作版本都纳入更多的需求 。步骤:将系统分成小的模块按顺序(重要程

7、度)将组件交给客户每次交互的组件都提供更多的功能。共七十一页螺旋(luxun)模型螺旋模型将工程划分为4个主要活动:制定计划、风险分析、实施工程和客户评估。4个活动螺旋式地重复执行,直到最终得到用户认可的产品。制定计划:确定软件目标,选定实施方案,弄清项目开发的约束条件。风险分析:分析选定方案,考虑(kol)如何识别和消除风险。实施工程:实施软件开发。这一步相当于纯粹的瀑布模型。客户评估:对当前工作结果进行评价,提出改进产品的建议。螺旋模型适用于有一定技术风险的大型软件系统的开发。共七十一页软件(run jin)质量的评价从以下几方面对软件作评价:1 可维护性2 可靠性3 可理解性4 效率一般

8、,在软件系统整个开发期间,必须成立(chngl)软件质量保证小组负责质量保证工作。 共七十一页质量管理的发展(fzhn)阶段20世纪,人类跨入了以加工机械化、经营规模化、资本垄断化为特征的工业化时代。在整整一个世纪中,质量管理的发展,大致经历(jngl)了三个阶段 1.质量检验阶段 2.统计质量控制阶段 3.全面质量管理阶段 共七十一页使用(shyng)合理的质量评价指标体系功能性指标完备性与正确性定性评价法可靠性指标可用度,初期故障率,偶然故障率,平均失效前时间,平均失效间隔时间,缺陷密度,平均失效恢复时间定量分析法易用性指标:易理解性,易学习性,易操作性效率(xio l)特征指标:代码规模

9、,处理时间共七十一页软件质量(zhling)管理分析方法散点图回归分析(fnx)时序图直方图帕雷托图因果分析图控制图过程能力指标共七十一页软件(run jin)质量管理分析方法散点图快速识别变量之间的关系通过分析散点图的形状,可以判断有无明显(mngxin)的趋势或走向?变量之间关联吗?为回归分析提供依据共七十一页软件质量(zhling)管理分析方法帕雷托图1897年由意大利经济学家Vilfred Pareto所提出Juran 将其发展为一般的帕雷托原则80-20原则帕雷托图中数据的重要性以下降的顺序排列按优先顺序表示数据,并将注意力集中在关键数据上,一般来说,关注在前两到三个因素(yn s)

10、就可以解决绝大部分的问题共七十一页软件质量(zhling)管理分析方法因果分析图日本质量管理学者石川馨首先提出,又称石川图或鱼刺图它把影响产品质量诸因素之间的关系以树状图的方式表示出来,使人一目了然,便于分析原因并采取相应的措施最后细分出来的原因应是具体(jt)的,便于采取实际措施在细分原因时,应集思广益,力求分析结果准确而无遗漏共七十一页软件质量(zhling)管理分析方法因果(yngu)分析图共七十一页CMMCMM的产生软件能力成熟度(the Capability Maturity Model for Software, 简称CMM)是美国软件工程研究所(Software Engineer

11、ing Institute, 缩写为SEI)首先提出的。SEI是美国国防部设立,SEI的任务是提供(tgng)一系列技术管理方法来提高软件工程水平,保证美国防部能够通过成本、进度和质量的预估和改进获得并且支持其精准的软件系统。共七十一页初始(ch sh)级可重复(chngf)级确定级可管理级优化级不断改进的过程能预见的过程标准一致的过程有纪律的过程CMM结构共七十一页软件(run jin)生命过程的度量软件开发过程的度量和开发过程改进方法软件开发过程的度量在软件发布之前的错误数的测量,交付报告(bogo)的缺陷测量,交付产品的测量,工作量测量,时间测量,与进度计划一致性测量等开发过程改进方法私

12、有的度量数据(缺陷率等)PSP方法(个人软件过程)公用度量(项目级的缺陷率等)SSPI(统计软件过程改进方法)项目度量1.根据来源分类所有的错误和缺陷2.记录修改每个错误和缺陷的成本3.统计每类的数目,并降序排列4.计算每类错误等的总成本5.分析造成组织最高成本的错误和缺陷6.修正过程的计划,消除最高错误和缺陷共七十一页软件测试基础(jch)软件测试的基本概念软件测试的定义使用手工或自动手段来运行或测试某个系统的过程, 其目的(md)在于检验它是否满足规定的需求或判定预期结果与实际结果之间的差别(IEEE 1983)软件测试是为了发现错误而执行程序的过程(Myers)分别从开发方和用户的角度考

13、虑会得到不同的侧重点共七十一页软件测试基础(jch)软件测试的基本概念软件测试的目标发现尽可能多的错误应该发现多少错误?什么时候结束测试?市场(shchng)压力、质量目标、客户要求、费用约束等测试与排雷游戏共七十一页软件测试基础(jch)软件测试的基本概念软件测试的原则(yunz)测试应追溯到需求,用户在大部分情况下了解自己的需求但不了解所对应的系统,所以检验的标准应该是用户的需求软件开发过程中应在早期就开展各种质量保证活动(Mind Test)软件开发实践表明,让别人来检查自己的工作会发现更多的错误(交叉检查与独立的QA的必要性)共七十一页软件测试基础(jch)软件测试的基本概念软件测试的

14、原则在设计测试用例时,测试用例应由输入数据和与之对应的期望输出结果这两部分组成,在输入数据中,应当包括合理的输入条件和不合理的输入条件不可能对所有的功能项都执行穷举测试在文档和代码的修改(xigi)过程中,防止因为修改(xigi)而带来新的错误(修改(xigi)验证与回归测试)共七十一页软件测试基础(jch)软件测试的基本概念软件测试的原则程序中的大部分错误(cuw)往往是在一小部分模块中发现的,遵循帕雷托定律(八二原则)对每一个测试结果分析并进行记录,防止以后发生类似的错误 共七十一页测试信息(xnx)流程测试(csh)结果分析改正错误可靠性分析软件配置测试配置测试工具测试结果预期结果回归测

15、试改正的软件预测的可靠性错误共七十一页软件开发与软件测试测试(csh)与开发各阶段的关系需求(xqi)分析说明书概要设计说明书详细设计说明书源程序代码单元测试集成测试确认测试共七十一页传统(chuntng)的测试方法与测试用例测试方法分类按测试步骤与策略、测试层次:单元测试、集成测试、确认测试、系统测试等按软件内部结构和实现:白盒测试和黑盒测试按执行程序的角度(jiod):静态测试与动态测试测试用例共七十一页软件测试活动(hu dng)软件测试方法(fngf)静态分析静态分析是在不运行程序的情况下,通过检查源代码的方式发现程序中潜在的错误,从而及时更正静态分析(或代码走查)通常是在开发组长的主

16、持进行的如果代码量过大,则根据实际的情况采用抽样走查的方式回顾软件测试人员与软件开发人员之间的博弈关系共七十一页软件测试活动(hu dng)软件测试方法动态测试动态测试是在测试用例驱动下运行被测单元(dnyun),并将实际的输出结果与期望的输出结果相比较。对单元(dnyun)测试,每个测试用例应该包含如下三个组成部分输入数据支持程序(或操作步骤)期望结果典型的测试用例包含上述的三部分内容共七十一页测试用例在软件测试计划中,测试用例的说明是重要的组成部分测试用例是为某个测试目标而编制的一组测试输入、执行条件及预期结果的方案,以便(ybin)测试某个程序路径或核实是否满足某个特定需求。好处:反映用

17、户的需求对过程有效监督对结果有效评估回归测试正确的回归实施重点凸出提高测试效率共七十一页测试用例的设计(shj)设计测试用例是软件测试中的关键技术问题设计的目的是确定一组最有可能发现某个错误或某类错误的测试数据,实现对系统的某个功能的测试。以尽可能少的测试用例,来发现最大量的可能性错误应考虑:用户的需求,用例的使用(shyng)对象用例的设计由粗到细所有的用例设计需要评审共七十一页测试用例的编写(binxi)唯一编号前置条件,说明(shumng)测试路径输入条件期望输出结果实际输出结果是否正确测试用例执行人标志执行时间共七十一页软件测试活动(hu dng)软件测试方法黑盒测试黑盒测试是从用户观

18、点出发的测试,它又称功能测试或验收测试。它假定测试者无须了解(lioji)程序的内部结构,黑盒测试是目前最流行的测试方法回顾V模型中系统测试用例所遵循的标准为需求规格而非所完成的程序功能防止测试跟着开发跑的情形共七十一页软件测试活动(hu dng)如何设计测试用例等价划分法等价划分属于一种黑盒测试的方法,它将程序的输入域划分为若干数据类,然后从每一个数据类中选取有代表性的数据作为测试用例。等价类是指某个输入域的子集合,其中各个输入数据对于揭露程序中的错误都是等效的有效(yuxio)等价类无效等价类共七十一页软件测试活动(hu dng)如何设计测试用例等价划分法有效等价类由那些对于(duy)程序

19、的规格说明是合理的和有意义的输入数据构成的集合无效等价类由那些对于程序的规格说明是不合理的和无意义的输入数据构成的集合共七十一页软件测试活动(hu dng)如何设计测试用例等价划分法如果输入条件规定了取值范围或者值的个数,可以定义(dngy)一个有效等价类和两个无效等价类例如 1A100,则有效等价类为“1A0)if(0=iType)X=Y+2;else if(1=iType)X=Y+10; else X=Y+20;共七十一页分析(fnx)步骤绘制(huzh)程序的控制流图134687141011共七十一页计算(j sun)环复杂度环复杂度是一种为程序逻辑复杂性提供定量测度的软件度量,该度量可

20、用于计算程序的基本的独立路径数目(shm),以确保所有语句至少执行一次测试数量的上界独立路径必须包含一条在定义之前不曾用到的边。V(G)=E-N+2 E:流图中边的数量,N是流图中节点的数量V(G)P+1 P是流图G中判定节点的数量共七十一页导出测试用例路径(ljng)1:414路径2:46714路径3:4681013414路径4:4681113414共七十一页设计(shj)测试用例Void Sort(int iRecordNum,int iType) int X=0;int Y=0;while(iRecordNum-0)if(0=iType)X=Y+2;else if(1=iType)X=Y

21、+10; else X=Y+20;入出测试路径10,1041421,024671431,1104681041,22046811共七十一页共七十一页单元测试模块测试,在编码阶段进行,以详细设计为指南对模块进行正确性检验,目的在于发现模块内部可能存在的各种错误。一般采用白盒测试法对所有的局部和全局的数据结构、外部接口与程序代码的关键部门都要严查测试用例针对计算错误、比较不正确或者控制流不正常(zhngchng)基本路径测试和循环测试共七十一页单元测试内容模块接口测试局部数据结构测试路径测试错误处理测试边界测试规程(guchng)驱动模块桩模块驱动(q dn)模块被测模块桩模块桩模块测试结果测试用例单元测试的内容共七十一页集成(j chn)测试组装测试,通过测试发现和接口有关的问题来构造(guzo)系统结构的系统化技术。目标是将通过了单元测试的模块组装成一个设计中描述的系统结构。两种策略:非增量集成增量集成自顶向下自底向上共七十一页集成(j chn)测试一般采用(ciyng)黑盒测试技术重点是模块组装后能否按既定意图协作运行功能:接口的完整性功能的有效性信息内容性能

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论