《软件测试》第3章课件.ppt_第1页
《软件测试》第3章课件.ppt_第2页
《软件测试》第3章课件.ppt_第3页
《软件测试》第3章课件.ppt_第4页
《软件测试》第3章课件.ppt_第5页
免费预览已结束,剩余58页可下载查看

下载本文档

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

文档简介

第3章黑盒测试方法,请大家将手机置于“振动”或“静音”状态,第3章黑盒测试方法,本章要点测试用例黑盒测试概述典型黑盒测试方法黑盒法综合使用策略,一、测试用例,1、测试用例(TestCase):是为特定目标开发的一组测试输入、执行条件和预期结果,其目的是测试程序中的某路径,核实程序或软件能否完成某个特定的功能需求。程序缺陷的认定:程序在执行某测试用例的输入数据时,若其输出结果与测试用例中的预期结果不同,则说明程序中存在缺陷。,一、测试用例,2、测试用例的重要性:(1)测试用例构成了设计和制定测试过程的基础(2)测试的“深度”与测试用例的数量呈正比(3)判断测试是否完全的一个主要评测方法是基于需求的覆盖,而这又是以确定、实施和执行的测试用例的数量为依据的(4)测试工作量与测试用例的数量呈正比(5)测试设计和开发的类型及所需的资源主要都受控于测试用例,一、测试用例,2、设计测试用例的基本准则:(1)测试用例的代表性(2)测试用例的非重复性(3)测试结果的可判定性(4)测试结果的可重现性,一、测试用例,2、测试用例的设计方法:(1)白盒法:关注源程序内部的逻辑结构(2)黑盒法:关注外部输入输出功能性能(3)灰盒法:内外结合,综合黑白盒法,二、黑盒测试概述,1、黑盒测试(黑箱测试/数据驱动测试/基于规格说明的测试):从用户角度出发,完全不考虑程序或软件内部逻辑结构和处理过程的情况下,根据软件的需求规格说明书设计测试用例,在程序或软件的界面上进行测试。,二、黑盒测试概述,2、黑盒测试的目的:(1)是否有不正确或遗漏了的功能(2)在接口上输入能否正确地接受,能否输出正确的结果(3)是否有数据结构错误或外部信息访问错误(4)性能上是否能够满足要求(5)是否有初始化或终止性错误,二、黑盒测试概述,黑盒测试不能实现穷举测试的原因(1)在测试某功能时不可能对其所有输入值进行测试,更不可能对其所有输入取值组合进行测试。(2)无法对需求规格说明书中未规定的潜在需求进行测试。3、黑盒测试的对象:既可以是单个程序,也可以是模块集成过程中的多个临时版本和最终软件。,二、黑盒测试概述,4、黑盒测试的优点:(1)黑盒测试不考虑程序或软件的具体实现,若程序或软件的内部实现发生了变化,原先的测试用例依然可用(2)黑盒测试用例的设计可以与软件的实现同时进行,因而加快了软件测试与开发的速度,二、黑盒测试概述,5、黑盒测试的局限性:(1)黑盒测试是从程序的界面上进行的测试,帮有时难以查找出错误的具体原因和位置,还需要通过执行白盒测试来进行更细致的错误定位。(2)黑盒测试的唯一依据是软件的需求规格说明书,它无法发现需求规格说明本身存在的问题,三、典型黑盒测试方法,1、等价类划分法:(1)使用等价类划分法设计测试用例的唯一依据是:软件需求规格说明书。(2)等价类分为:有效等价类和无效等价类(3)核心思想:按某种规则进行分类,然后从不同的类别是选择有代表性的操作或值进行测试,三、典型黑盒测试方法,1、等价类划分法:(4)划分等价类的若干原则:在规定了输入数据的取值范围的情况下,可以确定一个有效等价类和两个无效等价类。在规定了输入条件必须如何的情况下,可以确定一个有效等价类和一个无效等价类,三、典型黑盒测试方法,1、等价类划分法:(4)划分等价类的若干原则:在输入数据是一个布尔量的情况下,可以确定一个有效等价类和一个无效等价类。在规定了输入数据由N个值构成,并要求对其中的每个值进行测试时,可以确定N个有效等价类和1个无效等价类,三、典型黑盒测试方法,1、等价类划分法:(4)划分等价类的若干原则:在规定了输入数据必须遵守的规则的情况下,可以确定一个有效等价类和若干个无效等价类(从不同角度违反规则)在已划分的某等价类中,若各元素在程序中的处理方式不同,则应将此等价类进一步划分为若干等价类。,三、典型黑盒测试方法,2、边界值分析法:(1)边界值分析法是对等价类划分法的补充(2)核心思想:针对等于、刚好大于、刚好小于各输入等价类和输出等价类边界值的情况设计测试用例,三、典型黑盒测试方法,2、边界值分析法:(3)边界值分析法的使用原则:若输入条件规定了值的范围,应针对刚达到此范围边界的值,以及刚超过此范围边界的值设计测试用例若输入条件规定了值的个数,针对最大个数、最小个数、比最大个数大1、比最小个数小1等几种情况的数据设计测试用例,三、典型黑盒测试方法,2、边界值分析法:(3)边界值分析法的使用原则:若输入条件规定了值的范围,应针对刚达到此范围边界的值,以及刚超越此范围边界的值设计测试用例。若输出条件规定了值的个数,针对最大个数、最小个数,比最大个数大1、比最小个数小1等几种情况的数据设计测试用例,三、典型黑盒测试方法,2、边界值分析法:(3)边界值分析法的使用原则:若程序的规格说明中给出的输入域或输出哉是有序集合,应会对集合的第一个元素(即刚好大于或小于第一个元素值的数值)和最后一个元素(即刚好大于或小于最后一个元素值的数值)设计测试用例。,三、典型黑盒测试方法,2、边界值分析法:(3)边界值分析法的使用原则:若程序中使用了内部数据结构,应针对该内部数据结构边界上的值设计测试用例。进一步分析规格说明,找出其他可能的边界情况,针对它们设计测试用例,三、典型黑盒测试方法,3、错误推测法:根据测试人员的经验和直觉推测程序中可能存在的错误,有针对性地设计测试用例,可以验证事先的推测是否正确。如:输入数据为空、读入文件不存在、两字姓名中间加空格,实训四:三角形案例用例扩充,1、使用等价类划分法、边界值分析法、错误推测法扩充设计三角形案例(考虑输入数据中存在负数、小数等情况)2、执行自已设计的测试用例,并记录测试结果,如果实际测试结果与预期结果不符(即程序有缺陷),请将错误提示界面抓图并保存。3、组长负责分组讨论汇总测试用例,提交“测试用例设计”、“缺陷结果抓图集”,三、典型黑盒测试方法,4、因果图法和判定表法:(1)前述三种方法(等、边、错)只考虑单值的分析,而未考虑输入条件的组合,因果图和判定表主要针对输入值做各种可能的组合,以检测软件缺陷。(2)因果图和判定表:描述输入条件组合及每种组合对应的输出(3)唯一依据:软件需求规格说明书,三、典型黑盒测试方法,因果图和判定表法设计步骤:1)分析SPEC中哪些是原因和哪些是结果2)分析SPEC中指明的各原因之间、原因和结果之间、结果之间的关系,画出因果图3)根据已画出的因果图中,SPEC中未指明的各原因之间、原因和结果之间、结果之间的关系,三、典型黑盒测试方法,因果图和判定表法设计步骤:4)将因果图转化为判定表5)根据判定表每一列设计测试用例若SPEC中关系比较简单,则可略过因果图直接生成判定表。因此,因果图只是为了生成判定表的一种辅助前置方法使用因果图和判定表法可帮助完善SPEC文档,对于减少软件缺陷有重大指导意义!,三、典型黑盒测试方法,因果图中原因与结果间的关系符号:,用七种思维思考:貌似少了几种组合方式吧!,三、典型黑盒测试方法,因果图中原因与原因间的关系符号:,用七种思维思考:貌似还少几种组合方式吗?,C1,C2,三、典型黑盒测试方法,因果图中结果与结果间的关系符号:,这回即使不说也会用七种思维思考了吧!,三、典型黑盒测试方法,因果图与判定表应用实例:,根据“自动售货机”的SPEC设计测试用例见教材P47-P49,思考:根据此实例谈谈“因判法”的缺点或缺陷,实训五:因判法设计测试用例,目标软件:“石家庄市公交车刷卡机”1、需求规格说明如下:1)石市公交IC卡分三种:A卡、B卡和C卡2)A卡按次消费,可连续多人使用,每次消费0.9元,卡内记录有IC卡类型、剩余金额和每次刷卡的日期与时间,无使用时间限制3)B卡和C卡贴本人照片,只限本人使用,按月消费,B卡每月40元,C卡每月15元,单月限刷120次,卡内记录有本月剩余消费次数,和每次消费日期与时间,实训五:因判法设计测试用例,目标软件:“石家庄市公交车刷卡机”4)乘车时,乘客将IC卡靠进刷卡机感应区,刷卡机读取IC卡内数据,先验证IC卡类型,分别对A卡、B卡和C卡,做出判断响应5)如果刷卡机感应出A卡,读出剩余金额,扣除本次消费的0.9元,记录本次消费的日期和时间,并发出“嘟”的一声;如果剩余金额不足以支付本次的0.9元,则语音提示“余额不足请投币”;如果剩余金额不足3元,语音提示用户“请充值”;消费完毕在刷卡机LCD屏幕上显示“本次消费金额和卡内剩余金额”,实训五:因判法设计测试用例,目标软件:“石家庄市公交车刷卡机”6)如果刷卡机感应出B卡或C卡,则读出本月剩余次数,扣除本次消费的1次,记录刷卡的日期与时间,并且B卡提示“嘟嘟”两连声,C卡提示“嘟嘟嘟”三连声;如果剩余次数为0(已用完120次或本月未充值),不足以支付本次消费时,语音提示“消费用尽请投币”;如果剩余次数少于10次,则语音提示“请充值”,实训五:因判法设计测试用例,目标软件:“石家庄市公交车刷卡机”2、分组讨论使用因判法设计测试用例,画出因果图、判定表(存为Word文档)3、设计用例时注意运用七种思维思考SPEC的不完善之处,将SPEC补充完善,将补充的内容也写到上面Word文档内。4、最晚下周“软件测试”课之前,每组提交1份本次“实训五”的作业,三、典型黑盒测试方法,5、正交试验法:(1)应用前述因判法时,当组合的条件或取值众多时,会导致判定表列数急剧增长,将延长测试时间,增加测试成本,正交试验法就是为了有效缩减测试用例的一种黑盒测试方法。(2)实施依据:软件需求规格说明书和Galois理论导出的正交表,三、典型黑盒测试方法,5、正交试验法:(3)正交试验法实施步骤P54确定因子确定因子的取值范围确定每个因子的水平选择合适的正交表设计测试用例表,三、典型黑盒测试方法,5、正交试验法:(3)教材P51“某化学产品转化率”例题。认真研读SPEC,找出要测试的字段(或变量或因子)找出三个因素(变量/字段),即反应温度、反应时间、用碱量,分别用A、B、C来描述它们,这三个因素也称为因子,三、典型黑盒测试方法,5、正交试验法:认真研读SPEC,找出要测试的字段(或变量或因子)的取值范围三个因素A反应温度、B反应时间、C用碱量,取值范围分别是(80-90)(90-150)(5%-7%),三、典型黑盒测试方法,5、正交试验法:根据因子的取值范围,使用等/边/错三种方法设计几个单值用例(即因子的水平)。三个因素中A反应温度(80-90),取三个典型值80,85,90;B反应时间(90-150)取三个典型值90,100,150;C用碱量(5%-7%)取三个典型值5%,6%,7%,三、典型黑盒测试方法,5、正交试验法:选择合适的正交表正交表表达式为Ll(mn)下标l代表试验次数,即行数m代表因子的水平数n代表因子数,即正交表列数*因子数和因子水平数全大原则!,三、典型黑盒测试方法,5、正交试验法:选择合适的正交表常用正交表见教材P53和附录如果各因子水平数相同,则选择规则正交表,如果各因子水平数不相同,则应选择混合正交表,三、典型黑盒测试方法,5、正交试验法:设计测试用例根据正交表中的每一行就是各因子的组合,据其设计测试用例,实训六:正交试验法设计测试用例,教材P51,“提高某化学产品的转化率”例题,将SPEC中C的取值范围由原来的5%7%,变为5%或7%,其它条件不变,那么思考一下,应该用哪种正交表?并画出最后的正交测试方案(参照P54表),三、典型黑盒测试方法,6、场景法:(1)前述因判法的应用中未能考虑到单个条件重复组合的情况,而场景法的出现弥补了单个条件重复组合的判定情况。另外,现在OOP软件中都是使用事件触发来控制相关流程,场景法的基本思想也正是基于事件触发这种思路。(2)实施依据:软件需求规格说明书+事件路径分析,三、典型黑盒测试方法,6、场景法:(3)场景法往往不是从SPEC中直接生成用例,而是先分析SPEC用前面的“等/边/错/因/判/正”等方法生成一些用例,再综合考虑这些用例,利用事件触发的路径分析思想,基于路径覆盖理论,再生成新的测试用例。即从用例生成测试用例。,三、典型黑盒测试方法,6、场景法:(4)场景法的应用始于IBMRational公司,在RUP2000中有详述(RUP即Rational统一软件过程,RUP2000是一种在软件设计阶段使用的工具)(5)场景法通过用例场景描述业务操作流程,为每个用例场景编制测试用例(6)场景中的事件流有两种:基本流(基本事件)、备选流(分支事件),三、典型黑盒测试方法,6、场景法:,开始用例,结束用例,基本流,备选流1,备选流2,备选流3,备选流4,三、典型黑盒测试方法,6、场景法实施步骤:(1)分析SPEC,对软件的某一功能应用“等/边/错/因/判/正”设计初步测试用例(2)结合软件事件流程,确定基本流及步骤和备选流及步骤(3)画出事件流示意图(如SPEC中对软件事件的流程脉络很清晰,可略过此步),三、典型黑盒测试方法,6、场景法实施步骤:(4)基于路径覆盖理论,确定场景设计表,并对每一场景编号(5)根据基本流和备选流的步骤,再结合场景设计表,设计测试用例VI矩阵表(6)对每一行用例复审、验证,确保其准确、适度,取消多余或等效的测试用例,三、典型黑盒测试方法,6、场景法实施步骤:(7)对“测试用例VI矩阵表”进行实际数据填充,确定最终的“测试用例数据表”,三、典型黑盒测试方法,6、场景法实施步骤:(7)对“测试用例VI矩阵表”进行实际数据填充,确定最终的“测试用例数据表”7、场景法应用实例ATM自动取款机(见教材P56-60),实训七:使用场景法对“在线购物网站”的购物环节设计测试用例,1、某在线购物电子商务网站购物流程如下:用户进入在线购物网站进行购物,选购物品后,进行在线购买,这时需要使用帐号和密码登录,登录成功后,进行付钱交易,交易成功后,生成订购单,完成整个购物过程。2、使用场景法对用户购物环节设计测试用例,三、典型黑盒测试方法,7、功能图法:(1)功能通常由静态说明和动态说明组成。静态说明描述输入条件与输出条件之间的对应关系;而动态说明描述输入数据的次序或转移的次序(2)前述“等/边/错/因/判/正”法主要从静态角度分析软件的功能,功能图法从功能的角度出发从静态和动态两个方面综合分析软件的功能,并据此设计测试用例,三、典型黑盒测试方法,7、功能图法:(3)实施依据:软件需求规格说明书、软件功能图(4)功能图法就是使用功能图形式化地表示程序的功能说明,机械地生成功能图的测试用例(5)功能图模型由状态迁移图和逻辑功能模型组成,三、典型黑盒测试方法,7、功能图法:(6)使用状态迁移图生成测试用例,会用到逻辑覆盖和路径测试的概念和方法,这属于白盒设计方法。(7)使用逻辑功能模型生成测试用例,会涉及到输入与输出之间的关系,这属于黑盒设计方法(8)因此功能图法属于一种灰盒测试方法,四、黑盒测试方法综合应用,1、使用黑盒测试法设计测试用例时的综合应用策略:不管如何使用这些方法,认真逐字逐句研究SPEC都是这些方法的实施依据(1)首先使用等价类划分法(将无限测试变成有限测试)(2)然后使用边界值分析法(此法发现BUG能力最强)(3)使用错误推测法追加测试用例(依据测试人员经验),四、黑盒测试方法综合应用,1、综合应用策略:(4)对于软件中存在的输入条件组合情况,使用因判法(5)对于参数配置类软件或判定表规模过于庞大的情况,使用正交试验法减小有效测试用例的数目(对于无效测试用例一般采用“等/边/错”和逻辑推理对每一类无效用例做逐一测试)(6)对于业务流程十分清晰的系统可以使用场景法(根据用例生成用例),四、黑盒测试方法综合应用,1、综合应用策略:(7)当程序功能较复杂,存在大量组合情况时,可以使用功能图法(8)另外,有时也采用一些自由测试策略(瞎猫碰死耗

温馨提示

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

最新文档

评论

0/150

提交评论