




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第9章面向对象的测试
测试是软件开发周期的最后一个阶段,也是保证软件质量至关重要的一个环节。
本章学习内容9.1软件测试的概念9.2黑盒测试9.3白盒测试9.4多模块程序的测试9.5面向对象的测试方法9.1软件测试的概念一、软件测试的概念1.什么是软件测试软件测试是为了发现错误而执行程序的过程。通过在计算机上执行程序,暴露程序中潜在的错误。然后对程序错误进行纠错。2.软件测试的目的(1)以最少的时间和人力,系统地找出软件中潜在的各种错误和缺陷。如果我们成功地实施了测试,我们就能够发现软件中的错误。(2)测试的附带收获是,它能够证明软件的功能和性能与需求说明相符合。(3)实施测试收集到的测试结果数据为可靠性分析提供了依据。(4)测试不能表明软件中不存在错误,它只能说明软件中存在错误。3.测试与纠错的关系测试评价纠错程序测试用例测试结果期望结果错误信息改正信息4.软件测试的指导原则(1)应当把“尽早地和不断地进行软件测试”作为软件开发者的座右铭。(2)测试用例应由测试输入数据和对应的预期输出结果这两部分组成。(3)程序员应避免检查自己的程序。(4)在设计测试用例时,应包括合理的输入条件和不合理的输入条件。(5)充分注意测试中的群集现象。经验表明,测试后程序中残存的错误数目与该程序中已发现的错误数目成正比。(6)严格执行测试计划,排除测试的随意性。(7)应当对每一个测试结果做全面检查。(8)妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。二、软件测试的特性1.挑剔性
测试是为了证明程序有错,而不是证明程序无错。因此,只有抱着为证明程序有错的目的去测试,才能把程序中潜在的大部分错误找出来。
2.复杂性
设计测试用例是一项需要细致和高度技巧的工作,稍有不慎就会顾此失彼,发生不应有的疏漏。
3.不彻底性
“程序测试只能证明错误的存在,但不能证明错误不存在”。也就是说一切实际测试都是不彻底的,不能够保证测试后的程序不存在遗留的错误。
4.经济性
为了降低测试成本,在程序测试中,选择一些典型的、有代表性的测试用例,进行有限的测试。以便能使用尽可能少的测试用例,发现尽可能多的程序错误。
三、软件测试的种类及测试的文档1.测试种类程序测试静态分析(程序不执行)动态测试(程序执行)静态分析器分析(自动方式)人工方式代码评审代码会审走查办公桌检查黑盒测试(测试程序功能)白盒测试(测试程序结构)2测试文档为了保证测试质量,软件测试必须完成规定的文档。按照软件工程的要求,测试文档主要应包括:测试计划、测试报告两个方面的内容。
测试计划的主体是“测试内容说明”,它包括测试项目的名称、各项测试的目的、步骤、进度以及测试用例的设计等。
测试报告的主体是“测试结果”,它包括测试项目名称、实测结果与期望结果的比较、发现的问题以及测试达到的效果等。
3测试用例和测试结果的定义
测试用例={测试数据+期望结果}
测试结果={测试数据+期望结果+实际结果}9.2黑黑盒测试黑盒测试就就是把测试试程序看成成是一个黑黑盒子,测测试人员只只针对输入入与输出的的关系,对对被测试程程序功能及及外部特性性进行测试试,而不考考虑其内部部逻辑和内内部特性,,所以也称称为功能测试。用黑盒法设设计测试用用例,常用用技术有::等价分类法法、边界值分析析法、错误猜测法法等。一、等价分分类法1.特点点等价分类法法就是把输输入数据的的可能值划划分为若干干等价类,,使每类中中的任何一一个测试用用例,都能能代表同一一等价类中中的其它测测试用例。。例:某工厂厂公开招工工,规定报报名者年龄龄应在16周岁至35周岁之之间(假定定到2002年3月月30日止止)。即出出生年月不不在上述范范围内,将将拒绝接受受,并显示示“年龄不不合格”等等出错信息息。试用等等价分类法法设计对这这一程序功功能的测试试用例。解第一步步:划分等等价类。假定已知出出生年月由由6位数字字字符表示示,前4位位代表年,,后2位代代表月,则则可以划分分为3个有有效等价类类,7个无无效等价类类,如下表表所示。输入数据有效等价类无效等价类出生年月(1)6位数字字符(2)有非数字字符(3)少于6个数字符(4)多于6个数字符对应数值(5)在196702~198603之间(6)<196702(7)>198603月份对应数值(8)在1~12之间(9)等于“0”(10)>12第二步::设计有有效等价价类需要要的测试试用例。。上表中的的(1),(5),(8)等等3个有有效等价价类,可可以公用用一个测测试用例例,例如如:测试数据据期期望结结果测测试试范围197011输输入有效效(1),(5),(8)第三步::为每一一无效等等价类至至少设计计一个测测试用例例。本例例具有7个无效效等价类类,需要要7个测测试用例例:测试数据据期期望结结果测测试试范围MAY,70输输入无效效(2)19705输输入无无效(3)1970011输输入入无效(4)195512年年龄不合合格(6)197012年年龄不合合格(7)196200输输入无效效(9)196222输输入无效效(10)2.采用这一一技术要要注意以以下两点点:1)划分分等价类类不仅要要考虑代代表“有有效”输输入值的的有效等等价类,,还须考考虑代表表“无效效”输入入值的无无效等价价类;2)每一一无效等等价类至至少要用用一个测测试用例例,不然然就可能能漏掉某某一类错错误,但但允许若若干有效效等价类类合用同同一个测测试用例例。二、边界界值分析析法1.含含义所谓边界界值分析析,就是是要把测测试的重重点放在在各个等等价类的的边界上上,选取取刚好等等于、刚刚刚大于于和刚刚刚小于边边界值的的数据为为测试数数据,并并据此设设计出相相应的测测试用例例。2.特特点由于在处处理边界界情况时时,很容容易因疏疏忽或考考虑不周周发生编编码错误误,采用用边界值值分析法法,就是是要这样样来选择择在边界界值及其其附近运运行的测测试用例例,使得得被测程程序能更更有效地地暴露程序中潜潜藏的错错误。[例]程程序同上上例。试试用边界界值分析析法设计计其测试试用例。。[解]用用等价分分类法设设计测试试用例时时,测试试数据可可以在等等价类值值域内任任意选取取。就拿拿上例来来说,为为了只接接受年龄龄合格的的报名者者,程序序中可能能设有语语句if(196702<=value(birthdate)<=198603)thenread(birthdate)elsewrite“invalidage””三、错误误猜测法法1.特特点就是猜测测被测程程序在哪哪些地方方容易出出错,然然后针对对可能的的薄弱环环节来设设计测试试用例。。它比前2种方法法更多地地依靠测测试人员员的直觉觉与经验验。9.3白白盒测测试白盒测试试是对系系统的内内部过程程性细节节做细致致的检查查,把被被测试的的程序看看成是透透明的盒盒子,所所以也称称为结构构测试。。用白盒法法设计测测试用例例,常用用技术有有:逻辑覆盖盖测试法法、路径测试试法等。一、逻辑辑覆盖测测试法1.特特点逻辑覆盖盖测试法法通过流流程图来来设计测测试用例例,它考考察的重重点是图图中的判判定框(菱形框框)。因因为这些些判定若若不是与与选择结结构有关关,就是是与循环环结构有有关,是是决定程程序结构构的关键键成份。。2.逻逻辑覆盖盖测试的的5种覆覆盖标准准发现错误的能力
弱
强语句覆盖每条语句至少执行一次判定覆盖每一判定的每个分支至少执行一次条件覆盖每一判定中的每个条件,分别按“真”、“假”至少各执行一次判定/条件覆盖同时满足判定覆盖和条件覆盖的要求条件组合覆盖求出判定中所有条件的各种可能组合值,每一可能的条件组合至少执行一次二、路径径测试法法1.含含义路径测试试就是着着眼于程程序执行行路径的的测试方方法,对对程序图图中每一一条可能能的程序序执行路路径至少少测试一一次。如如果程序序中含有有循环(在程序图图中表现现为环),则每个个循环至至少执行行一次。。2.特特点1)满足结构构测试的的最低要要求。2)有利于安安排循环环测试。。9.4多多模块块程序的的测试实际的应用程程序大都是多多模块程序,,在软件工程程中,软件测测试主要指多多模块程序的的测试。多模模块程序要比比单模块小程程序复杂得多多。这种复杂杂性的主要表表现是测试的的层次性,多多模块程序的的测试共包括括4个层次。。第一层为单元元测试第二层为集成成测试第三层为确认认测试第四层是系统统测试一、单元测试试1.含义以模块或子程程序为单位进进行测试,又又称模块测试试。2.目的与与任务目的:是通过对模块块的静态分析析与动态测试试,使其代码码达到模块说说明书的需求求。任务:对模块代码进进行编译,发发现并纠正其其语法错误;;对模块代码码进行静态分分析,并据此此设计一组测测试用例和必必要的测试软软件;用选定定的测试用例例对模块进行行测试,直至至满足测试终终止标准为止止;最后,编编制单元测试试报告。3.测试步步骤编译--其检检查对象是代代码中的语法法错误。静态分析器检检查代码评审动态测试---重点是发现现单元的功能能性错误。检查对象已从从语法错误改改变为以结构构性错误为主主的其它错误误4.特点单元不是独立立的程序。在在多模块程序序中,每一模模块都可能调调用其它模块块或者被其它它模块所调用用。所以在单单元测试时,,需要为被测测模块编制若若干测试软件件,给它的上上级模块或下下级模块作替替身。替身模模块应该是真真实模块的简简化,仅须模模拟与被测模模块直接相关关的一部分功功能。二、集成测试试1.含义通过了单元测测试的模块,,按照一定的的策略在组装装为完整的程程序的过程中中进行的测试试,称为集成成测试或组装装测试。2.目的与与任务是将经过单元元测试的模块块逐步组装成成具有良好一一致性的完整整的程序。三、确认测试试1.含义确认测试是对对整个程序的的测试,用于于确认组装完完毕的程序确确能满足用户户的全部需求求。2.目的与与任务确认测试继集集成测试之后后进行,其目目的在于确认认组装完毕的的程序是否满满足软件需求求规格说明书书(SRS))的要求。四、系统测试试1.含义系统测试是将将已经确认的的软件、计算算机硬件、外外设、网络等等其他元素结结合在一起,,进行软件系系统的各种组组装测试和确确认测试。2.目的与与任务测试的目的,,是检查把确确认测试合格格的软件安装装到系统中以以后,能否与与系统的其余余部分协调运运行,并且完完成SRS对对它的要求。。9.5面向向对象的测试试方法面向对象测试试应扩大到包包括对OOA和OOD模型的复审,,以便及早发发现错误。面向对象软件件是基于类/对象的,而而传统软件则则基于模块。。一、面向对象象软件的测试试面向对象软件件测试和传统统软件测试一一样,也是从从单元测试开开始,然后经经集成测试,,最后进入确确认与系统测测试的。1.面向对象象软件的单元元测试(1)面向向对象软件的的单元测试是是对类和对象象进行测试(2)面向对象软件件的类测试是是由封装在类类中的操作和和类的状态行行为所驱动的的。(3)在面向对象的的单元测试中中不仅要发现现类的所有操操作中存在的的问题,还要要考查一个类类与其他的类类协同工作时时可能出现的的错误。2.面向对象象软件的集成成测试(1)面向对象的集集成测试主要要关注于系统统的结构和内内部的相互作作用,以便发发现仅当各类类相互作用时时才会产生的的错误。(2)此外,面向对对象程序具有有动态特性,,程序的控制制流往往无法法确定,因此此只能做基于于黑盒方法的的集成测试。。3.面向对象象软件的确认认与系统测试试(1)面向对象软件件的确认测试试与系统测试试忽略类连接接的细节,主主要采用传统统的黑盒子法法对OOA阶阶段的用例所所描述的用户户交互进行测测试。(2)OOA阶段的的对象行为模模型、事件流流图等都可以以用于导出面面向对象系统统测试的测试试用例。第10章软软件项目管理理10.1软软件的度量量10.2软软件估算模模型10.3软软件成本估估计10.4人人员的分配配与组织10.5项项目进度安安排10.1软软件的度量软件度量可划划分为1.软件项目目度量:目的在于改进进软件产品的的质量;2.软件过程程度量:目的在于改进进企业的软件件开发过程,,提高整个过过程的质量。。一、项目度量的内内容1.5种种基本度量度量常用单位Size规模LOC,KLOCEffort工作量人-月Duration时间(或Schedule进度)月Quality质量错误数/KLOCCost成本(或Rework返工)元2.特点点(1)以代码行(LOC)表示示的软件规模模是最基本的的度量。它直直接关系到软软件的成本、、开发工作量量和完成时间间。(2)在项目度量中中,所有的基基本度量都是是以代码行LOC为基础础的。例如,,软件成本(元元)=LOC×每行代码码的成本(行行/元)开发工作量(人-月)=LOC/每每人-月开发发的代码行((行/人-月)(3)软件的规模、、成本和工作作量通常都分分阶段进行度度量。3.面向功能能的项目度量量中心思想任何软件都包包含若干种功功能,每种功功能又包含具具有不同复杂杂度的若干个个功能点。因因此,软件的的规模也可用用功能点数量量的多少来表表示,以代替替原来常用的的LOC表示示法。一、过程度量1.含义义过程度量可以以认为是对整整个企业中全全体项目组开开发能力的衡衡量。2.特点点把对于项目组组中个人的度度量组合起来来,可形成对对项目的度量量;把所有项项目组的项目目度量组合起起来,就形成成了对整个企企业的过程度度量。10.2软件估算模型型估算在软件度度量中占有重重要的地位。。一般地说,,估算是在软件开发之前进行行的。资源模型可用来估算软软件在开发中中花费的资源源。典型的资源模模型:静态单变量资资源模型Putnam资源模型COCOMO模型一、静态单变量资资源模型1.特点点这种模型在计计算软件开发发的资源花费费时,只需要要设定被开发发软件的一种种参数,故称称为单变量型型。2.形式式资源=C1×(估计的软件特特征)C2二、Putnam资源源模型1.形式式L=CK1/3T4/3或K=L3/(C3T4)2.特点点(1)Putnam模型是一种多多变量资源模模型。(2)Putnam模型是在同同一个模型中中给出了K((或E)、L和T三者之之间的关系。。(3)Putnam模型型方程揭示了了E与T之间间的关系。根根据这一方程程,开发工作作量E与开发发时间T的四四次方成反比比。这表明,,开发时间的的小量变化,,会引起开发发工作量相当当大的变化。。三、COCOMO模型特点以静态单变量量模型为基础础,但在下列列两个方面作了较大的改改进:(1)按照软件的应应用领域和复复杂程度,将将它们分为组组织、半独立立和嵌入三种种类型,每类类分别使用一一组不同的模模型方程,(2)在模型中增加加一个工作量量调节因子EAF,反映映各种有关因因素对软件开开发的影响。。这些因素归归结为4类、、15种因子子,10.3软件成本估计计资源模型是估估计成本的一一种手段,成成本估计是软软件费用管理理的核心,成本估计方法法分为“自顶向下估计计”、“由底向上估计计”和“算法模型估计计”三类。1.自顶向下成本本估计这类方法着眼眼于软件的整整体。根据被被开发项目的的整体特性,,首先估算出出总的开发成成本,然后在在项目内部进进行成本分配配。2.由底向上成本本估计不是从整体开开始,而是从从一个个任务务单元开始。。具体作法是:先将开发任务务分解为许多多子任务,子子任务又分成成子子任务,,直到每一任任务单元的内内容都足够明明确为止。然然后把各个任任务单元的成成本估计出来来,汇合成项项目的总成本本。3.算法模型估计计算法模型就是是资源模型,,是成本估计计的又一有效效工具。由于于任何资源模模型都是根据据历史数据导导出的,所以以比较客观,,计算结果的的重复性也好好。模型估计法常常与自顶向下下估计或由底底向上估计结结合使用。以以COCOMO模型为例例,使用自顶顶向下方法时时,可以用COCOMO模型来计算算整项目的成成本;如果使使用由底向上上方法,又可可用这一模型型来计算各个个任务单元的的成本。10.4人员的分配与与组织1.人员分分配的计算可可通过Rayleigh-Norden曲曲线实现2.人员分分配的两条重重要的定律(1)人员-时间权权衡定律(2)Brooks定律3.人员组组织的结构层层次软件经理项目经理开发小组4.开发发小组的组组织方式(1)民民主开发小小组(2)主主程序员小小组10.5项目进度安安排1.进度安排是是项目管理理的一个重重要内容。。2.两种安排进进度计划的的方法(1)计划评审技技术简称PERT技术,有时PERT技术也称为为工程网络络技术。(2)Gantt图Gantt图是安排排软件进度度计划的一一有用工具具。它以图图形的方式式列出了项项目开发活活动的进展展情况。9、静夜四四无邻,,荒居旧旧业贫。。。12月-2212月-22Thursday,December29,202210、雨中黄叶树树,灯下白头头人。。20:50:1420:50:1420:5012/29/20228:50:14PM11、以以我我独独沈沈久久,,愧愧君君相相见见频频。。。。12月月-2220:50:1420:50Dec-2229-Dec-2212、故人人江海海别,,几度度隔山山川。。。20:50:1420:50:1420:50Thursday,December29,202213、乍见翻疑疑梦,相悲悲各问年。。。12月-2212月-2220:50:1420:50:14December29,202214、他他乡乡生生白白发发,,旧旧国国见见青青山山。。。。29十十二二月月20228:50:14下下午午20:50:1412月月-2215、比不了得得就不比,,得不到的的就不要。。。。十二月228:50下下午12月-2220:50December29,202216、行动出出成果,,工作出出财富。。。2022/12/2920:50:1420:50:1429December202217、做前前,能能够环环视四四周;;做时时,你你只能能或者者最好好沿着着以脚脚为起起点的的射线线向前前。。。8:50:14下下午8:50下下午午20:50:1412月月-229、没没有有失失败败,,只只有有暂暂时时停停止止成成功功!!。。12月月-2212月月-22Thursday,December29,202210、很多事情努努力了未必有有结果,但是是不努力却什什么改变也没没有。。20:50:1420:50:1420:5012/29/20228:50:14PM11、成功就是日日复一日那一一点点小小努努力的积累。。。12月-2220:50:1420:50Dec-2229-Dec-2212、世间间成事事,不不求其其绝对对圆满满,留留一份份不足足,可可得无无限完完美。。。20:50:1420:50:1420:50Thursday,December29,202213、不知香香积寺,,数里入入云峰。。。12月-2212月-2220:50:1420:50:14December29,202214、意意志志坚坚强强的的人人能能把把世世界界放放在在手手中中像像泥泥块块一一样样任任意意揉揉捏捏。。29十十二二月月20228:50:14下下午午20:50:1412月月-2215、楚塞塞三湘湘接,,荆门门九派派通
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025河南郑州轨道工程职业学院招聘辅导员、教师共75名考前自测高频考点模拟试题及完整答案详解1套
- 2025年冀北博望电力产业管理(北京)有限公司高校毕业生招聘(第三批)模拟试卷附答案详解(突破训练)
- 2025春季中材国际校园招聘163人考前自测高频考点模拟试题有答案详解
- 2025年融资租赁合同特征与范本解析
- 2025湖南岳阳临湘市城东粮食收储有限公司招聘考前自测高频考点模拟试题附答案详解(完整版)
- 初中信息技术考试题库及答案app
- 项目统计考试题库及答案
- 品质工具考试题库及答案
- 泰安高压电工考试题库及答案
- 中专口腔考试题库及答案
- 2025年全国中小学校党组织书记网络培训示范班在线考试题库及答案
- 全国2025年质量月活动知识竞赛题库及答案
- 2025年全国中小学校党组织书记网络培训示范班在线考试题库及答案
- 2025全国农业(水产)行业职业技能大赛(水生物病害防治员)选拔赛试题库(含答案)
- 中国新生儿复苏指南解读(2021修订)
- 广告及宣传印刷品制作服务方案
- 安全评价工作程序框图流程图
- 医共体成员单位人力资源工作制度
- 西式烹调师中级理论试卷 答案
- 如何建立高效学习小组
- 汽车系统动力学与控制 教学大纲
评论
0/150
提交评论