黑盒测试的测试用例设计_第1页
黑盒测试的测试用例设计_第2页
黑盒测试的测试用例设计_第3页
黑盒测试的测试用例设计_第4页
黑盒测试的测试用例设计_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

1、海视云 YQP测试用例设计测试用例设计( (黑盒黑盒) )目目录录对软件测试的基本认识对软件测试的基本认识测试分类测试分类测试用例设计方法测试用例设计方法-黑盒黑盒1. 1. 对软件测试的认识对软件测试的认识软件测试行业前景如何?软件测试行业前景如何? 如何做好如何做好软件测试软件测试?起步阶段,人才紧缺,高端测试人才最抢手质量意识引发测试越来越受重视职业寿命长发展道路宽我们测试的目标是?如何达到目标?测试用例的作用? 测试行为的可管理、可量化。 测试过程的指导,质量稳定的根本保障。4测试用例的定义测试用例的定义 测试内容的一系列情景和每个情景中必须依靠输入和输出,而对软件的正确性进行判断的测

2、试文档,称为测试用例。测试用例就是将软件测试的行为活动,做一个科学化的组织归纳。测试用例的作用测试用例的作用避免盲目测试并提高测试效率使测试实施重点突出、目的明确便于任务分配、进度跟踪,保证测试过程质量。漏测分析,逐步完善测试覆盖。随着用例逐步细化,减少漏侧,保证质量方便缺陷分析和质量评估5良好测试用例的特征良好测试用例的特征 可以最大程度地找出软件隐藏的缺陷最大程度地找出软件隐藏的缺陷 可以最高效率的找出软件缺陷最高效率的找出软件缺陷 可以最大程度地满足测试覆盖要求最大程度地满足测试覆盖要求 既不过分复杂、也不能过分简单 使软件缺陷的表现可以清楚的判定 测试用例包含期望的正确的结果 待查的输

3、出结果或文件必须尽量简单明了 不包含重复的测试用例 测试用例内容清晰、格式一致、分类组织6测试用例的组成元素与范例测试用例的组成元素与范例测试用例编号ID测试用例标题测试的模块测试输入条件期望的输出结果其它说明ID类型类型标题标题测试步骤测试步骤期望的结果期望的结果说明说明001登录输入正确密码用户在登录界面输入正确的密码后,按回车键程序提示登录成功002登录输入错误密码用户在登录界面输入错误的密码后,按回车键程序提示输入密码错误,请重新输入003登录不输入的空密码用户在登录界面没有输入任何密码使密码为空后,按回车键程序提示用户没有输入密码,请输入程序应该告知用户没有输入密码,而不是密码错误2

4、. 2. 测试分类测试分类两种常用的测试方法两种常用的测试方法v白盒测试白盒测试v黑盒测试黑盒测试白盒测试白盒测试 此方法把测试对象看做一个透明的盒子,它允许测试人员此方法把测试对象看做一个透明的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。例,对程序所有逻辑路径进行测试。 通过在不同点检查程序的状态,确定实际的状态是否与预通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。测试。白盒测

5、试白盒测试白盒测试用例的设计方法白盒测试用例的设计方法逻辑覆盖:以程序的内部逻辑结构为基础,分为语句覆盖、判定覆盖、判定-条件覆盖、条件组合覆盖等基本路径测试:在程序控制流程的基础上,分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例。白盒测试用例注意事项白盒测试用例注意事项由于测试路径可能非常多,由于时间和资源问题,选出足够多的路径测试由于深入到程序编码,通常开发人员协助测试人员书写白盒测试用例黑盒测试黑盒测试这种方法是把测试对象看做一个黑盒子,测试人这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,员完全不考虑程序内部的逻辑结构和内部特性,

6、只依据程序的需求规格说明书,检查程序的功能只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。是否符合它的功能说明。黑盒测试又叫做功能测试或数据驱动测试。黑盒测试又叫做功能测试或数据驱动测试。3. 3. 黑盒测试用例的设计方法黑盒测试用例的设计方法 具体的黑盒测试用例设计方法包括等价类划分法、边界值具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、因果图分析法、因果图法、错误法、错误推测法、场景法等。推测法、场景法等。 这些方法是比较实用的,但采用什么方法,在使用时自然这些方法是比较实用的,但采用什么方法,在使用时自然要针对开发项目的特点对方法加以适当的选择。要针对开发项目

7、的特点对方法加以适当的选择。3 3.1 .1 等价类划分法等价类划分法(等价分配)(等价分配) 把所有可能的输入数据把所有可能的输入数据( (有效的和无效有效的和无效的的) )划分成若干个等价的子集划分成若干个等价的子集( (称为等价类称为等价类别或等价区间别或等价区间) ), 使得每个子集中的一个使得每个子集中的一个典型值在测试中的作用与这一子集中所有典型值在测试中的作用与这一子集中所有其它值的作用相同其它值的作用相同. . 可从每个子集中选取一组数据来测试程序可从每个子集中选取一组数据来测试程序 等价类别或等价区间是指测试相同目标等价类别或等价区间是指测试相同目标或者暴露相同软件缺陷的一组

8、测试用例或者暴露相同软件缺陷的一组测试用例 例例: :某报表处理系统要求用户某报表处理系统要求用户输入输入处理报表处理报表 的的日期日期,日期限制在,日期限制在20032003年年1 1月至月至20082008年年 12 12月,即系统只能对该段期间内的报表月,即系统只能对该段期间内的报表 进行处理,如日期不在此范围内,则显进行处理,如日期不在此范围内,则显 示输入错误信息。示输入错误信息。 系统日期规定由年、月的系统日期规定由年、月的6 6位数字字符组位数字字符组 成,前四位代表年,后两位代表月。成,前四位代表年,后两位代表月。 如何用等价类划分法设计测试用例如何用等价类划分法设计测试用例,

9、 , 来测试程序的日期检查功能?来测试程序的日期检查功能?如何划分等价类?如何划分等价类?有效等价类有效等价类( (合理等价类合理等价类) )无效等价类无效等价类( (不合理等价类不合理等价类) ) 划分等价类的标准:划分等价类的标准:覆盖覆盖不相交不相交代表性代表性划分等价类的规则划分等价类的规则 (1)(1)如果输入条件规定了取值范围,可定义一个有如果输入条件规定了取值范围,可定义一个有 效等价类和两个无效等价类。效等价类和两个无效等价类。例例 输入值是学生成绩,范围是输入值是学生成绩,范围是0 01001000 1000 100 有效等价类有效等价类00成绩成绩100100无效等价类无效

10、等价类 成绩成绩100100 无效等价类无效等价类 成绩成绩00(2)(2)如果输入条件代表集合的某个元素,则可定义如果输入条件代表集合的某个元素,则可定义 一个有效等价类和一个无效等价类。一个有效等价类和一个无效等价类。划分等价类的规则:划分等价类的规则:(3)(3)如规定了输入数据的一组值,且程序对不同输如规定了输入数据的一组值,且程序对不同输 入值做不同处理,则每个允许的输入值是一个入值做不同处理,则每个允许的输入值是一个 有效等价类,并有一个无效等价类有效等价类,并有一个无效等价类( (所有不允所有不允 许的输入值的集合许的输入值的集合) )。例:输入条件说明学历可为例:输入条件说明学

11、历可为: :专科、本科、硕士、博士专科、本科、硕士、博士四四 种之一,则分别取这四个值作为种之一,则分别取这四个值作为四个有效等价类四个有效等价类, 另外把四种学历之外的任何学历作为无效等价类另外把四种学历之外的任何学历作为无效等价类(4)(4)如果规定了输入数据必须遵循的规则,可确定如果规定了输入数据必须遵循的规则,可确定 一个有效等价类(符合规则)和若干个无效等一个有效等价类(符合规则)和若干个无效等 价类(从不同角度违反规则价类(从不同角度违反规则) )。(5)(5)如已划分的等价类各元素在程序中的处理方式如已划分的等价类各元素在程序中的处理方式 不同,则应将此等价类进一步划分成更小的等

12、不同,则应将此等价类进一步划分成更小的等 价类。价类。用等价类划分法设计测试用例步骤:用等价类划分法设计测试用例步骤:(1)(1)形成形成等价类表等价类表,每一等价类规定一个,每一等价类规定一个 唯一的唯一的编号编号;(2)(2)设计一设计一测试用例测试用例,使其尽可能多地覆,使其尽可能多地覆 盖尚未盖尚未覆盖覆盖的的有效等价类有效等价类,重复这一,重复这一 步骤,直到所有有效等价类均被测试步骤,直到所有有效等价类均被测试 用例所覆盖;用例所覆盖;(3)(3)设计一新设计一新测试用例测试用例,使其只,使其只覆盖覆盖一个一个 无效等价类无效等价类,重复这一步骤直到所有,重复这一步骤直到所有 无效

13、等价类均被覆盖;无效等价类均被覆盖;第一步:等价类划分第一步:等价类划分输入条件输入条件 有效等价类有效等价类 无效等价类无效等价类 报表日期的报表日期的类型及长度类型及长度6 6位数字字符位数字字符(1)(1)有非数字字符有非数字字符 (4)(4)少于少于6 6个数字字符个数字字符 (5)(5)多于多于6 6个数字字符个数字字符 (6)(6)年份范围年份范围在在2003200320082008之间之间 (2)(2)小于小于2003 2003 (7)(7)大于大于2008 2008 (8)(8)月份范围月份范围在在1 11212之间之间(3)(3)“报表日期报表日期”输入条件的等价类表输入条件

14、的等价类表小于小于1 1 (9)(9)大于大于12 12 (10)(10)第二步:为有效等价类设计测试用例 测试数据 期望结果 覆盖范围200306200306等价类等价类(1)(2)(3)(1)(2)(3)输入有效输入有效对表中编号为对表中编号为1,2,31,2,3的的3 3个有效等价类用一个测个有效等价类用一个测试用例覆盖:试用例覆盖:(1)(1)6 6位数字字符位数字字符(2)(2)年在年在2003200320082008之间之间 (3)(3)月在月在1 11212之间之间第三步:为每一个无效等价类设至少 设计一个测试用例 测试数据 期望结果 覆盖范围003003MAYMAY等价类等价类

15、(4)(4)输入无效输入无效2003520035等价类等价类(5)(5)输入无效输入无效20030052003005等价类等价类(6)(6)输入无效输入无效200120010505等价类等价类(7)(7)输入无效输入无效200920090505等价类等价类(8)(8)输入无效输入无效200320030000等价类等价类(9)(9)输入无效输入无效200320031313等价类等价类(10)(10)输入无效输入无效不能出现相同不能出现相同的测试用例的测试用例本例的本例的1010个等价类至个等价类至少需要少需要8 8个测试用例个测试用例例例: :对招干考试系统对招干考试系统“输入学生成绩输入学生成

16、绩”子模块子模块 设计测试录入准考证号的测试用例设计测试录入准考证号的测试用例准考证号数据格式定义:共准考证号数据格式定义:共6 6为数字组成,其中为数字组成,其中第一位为专业代号第一位为专业代号: :1 1- -行政专业行政专业, ,2 2- -法律专业,法律专业,3 3- -财经专业财经专业后后5 5位为考生顺序号,编码范围为:位为考生顺序号,编码范围为: 行政专业准考证号码为行政专业准考证号码为: :1 110001100011 11121511215 法律专业准考证号码为法律专业准考证号码为: :2 210001100012 21200612006 财经专业准考证号码为财经专业准考证号

17、码为: :3 310001100013 31401514015 准考证号码的等价类划分准考证号码的等价类划分 有效等价类有效等价类: : (1) 110001 (1) 110001 111215 111215 (2) 210001 (2) 210001 212006 212006 (3) 310001 (3) 310001 314015 314015 无效等价类无效等价类: : (4) - (4) - 110000 110000 (5) 111216 (5) 111216 210000 210000 (6) 212007 (6) 212007 31000 31000 (7) 314016 (7

18、) 314016 + + 3.2 3.2 边界值分析法边界值分析法边界值分析法与等价类划分法区别边界值分析法与等价类划分法区别(1)(1)边界值分析不是从某等价类中边界值分析不是从某等价类中 随便挑一个作为代表,而是使随便挑一个作为代表,而是使 这个等价类的每个边界都要作这个等价类的每个边界都要作 为测试条件。为测试条件。(2)(2)边界值分析不仅考虑输入条件,边界值分析不仅考虑输入条件, 还要考虑输出空间产生的测试还要考虑输出空间产生的测试 情况情况被测试被测试子子 域域测试内点测试内点测试外点测试外点 如果在悬崖峭壁边如果在悬崖峭壁边可以自信地安全行走,可以自信地安全行走,平地就不在话下。

19、平地就不在话下。 如果软件在能力达如果软件在能力达到极限时能够运行,那到极限时能够运行,那么在正常情况下就不会么在正常情况下就不会出什么问题出什么问题。软件边界与悬崖很类似边界条件类型 如果软件测试问题如果软件测试问题包含确定的边界包含确定的边界, ,那那么数据类型可能是么数据类型可能是: :数值数值字符字符位置位置数量数量速度速度地址地址尺寸尺寸还要考虑数据类型还要考虑数据类型的特征的特征: :第一个第一个/ /最后一个最后一个最小值最小值/ /最大值最大值开始开始/ /完成完成空空/ /满满最慢最慢/ /最快最快相邻相邻/ /最远最远超过超过/ /在内在内测试边界线测试边界线 输入输入条件

20、条件报表日报表日期的类期的类型及长型及长度度1 1个数字字符个数字字符5 5个数字字符个数字字符7 7个数字字符个数字字符有有1 1个非数字字符个非数字字符全部是非数字字符全部是非数字字符6 6个数字字符个数字字符显示出错显示出错显示出错显示出错显示出错显示出错显示出错显示出错显示出错显示出错输入有效输入有效日期日期范围范围月份月份范围范围“报表日期报表日期”边界值分析法测试用边界值分析法测试用例例测试用例说明测试用例说明测试数据测试数据 期望结果期望结果选取理由选取理由5 52003520035200300520030052003.52003.5MAY-MAY-200305200305月份为

21、月份为1 1月月月份为月份为1212月月月份月份112122003012003012003122003122003002003002002008 813132003012003012008122008122002002 20 01 12002009 91 12 2输入有效输入有效输入有效输入有效显示出错显示出错显示出错显示出错输入有效输入有效输入有效输入有效显示出错显示出错显示出错显示出错在有效范围在有效范围边界上选取边界上选取数据数据仅有仅有1 1个合法字符个合法字符比有效长度少比有效长度少1 1比有效长度多比有效长度多1 1只有只有1 1个非法字符个非法字符6 6个非法字符个非法字符类型及

22、长度均有效类型及长度均有效最小日期最小日期最大日期最大日期刚好小于最小日期刚好小于最小日期刚好大于最大日期刚好大于最大日期最小月份最小月份最大月份最大月份刚好小于最小月份刚好小于最小月份刚好大于最大月份刚好大于最大月份3 3. .3 3 因果图法因果图法 因果图适合于描述对于多种输入条件因果图适合于描述对于多种输入条件的组合,相应产生多个动作的形式来设计的组合,相应产生多个动作的形式来设计测试用例。测试用例。 因果图方法最终生成的是判定表。因果图方法最终生成的是判定表。因果图方法实例某电力公司有某电力公司有A A、B B、C C、D D四类收费标准四类收费标准, ,并规定:并规定:居民用电居民

23、用电 100 100度度/ /月月 按按A A类收费类收费 100 100度度/ /月按月按B B类收费类收费动力用电动力用电 10000 10000度度/ /月月, ,非高峰非高峰,B,B类收费类收费 10000 10000度度/ /月月, ,非高峰非高峰,C,C类收费类收费 10000 10000度度/ /月月, , 高峰高峰,C,C类收费类收费 10000 10000度度/ /月月, , 高峰高峰,D,D类收费类收费居民用电居民用电动力用电动力用电用电用电100100度度/ /月月用电用电1000010000度度/ /月月高峰高峰1 12 24 43 35 5A AB BC CD D:与

24、:与:或:或非 用因果图表明输入和输出间的逻辑关系用因果图表明输入和输出间的逻辑关系1 1I I1 12 2A AB BC C4 43 35 5D DI I4 4I I3 3I I2 2因因果果把因果图转换为判定表把因果图转换为判定表组合条件组合条件条件条件( (原因原因) ) 动作动作( (结果结果) )A AB BC C1 12 23 31 12 23 34 45 56 61 10 01 11 10 00 00 01 11 10 00 00 01 11 10 00 00 00 01 10 00 00 00 01 11 10 04 41 10 01 10 05 50 00 01 11 1D

25、D0 00 00 01 11 10 00 01 10 00 00 00 0测试用例测试用例为判定表每一列设计一个测试用例为判定表每一列设计一个测试用例: :1 1列列 居民电居民电,90,90度度/ /月月 A A2 2列列 居民电居民电,110,110度度/ /月月 B B3 3列列 动力电动力电, ,非高峰非高峰,8000,8000度度/ /月月 B B4 4列列 动力电动力电, ,非高峰非高峰,1.2,1.2万度万度/ /月月 C C5 5列列 动力电动力电, , 高峰高峰,0.9,0.9万度万度/ /月月 C C6 6列列 动力电动力电, , 高峰高峰,1.1,1.1万度万度/ /月月

26、 D D 条件条件 测试用例测试用例 预期结果预期结果组合组合 ( (输入数据输入数据) () (输出动作输出动作) )基本思路:基本思路:在测试程序时,人们可以根据经验或直觉推测程序中可能存在在测试程序时,人们可以根据经验或直觉推测程序中可能存在的各种错误,从而有针对性地编写检查这些错误的测试用例的方法的各种错误,从而有针对性地编写检查这些错误的测试用例的方法。例如,测试手机终端的通话功能,可以设计各种通话失败的情况来补充测试用 例:1) 无SIM 卡插入时进行呼出(非紧急呼叫)2) 插入已欠费SIM卡进行呼出3) 射频器件损坏或无信号区域插入有效SIM卡呼出4) 网络正常,插入有效SIM卡

27、,呼出无效号码(如1、888、333333、不输入任何号码等)5) 网络正常,插入有效SIM卡,使用“快速拨号”功能呼出设置无效号码的数字3 3. .4 4 错误推测法错误推测法(error guessing)(error guessing)如何做好错误推测法?如何做好错误推测法?发散思维总结经验发挥团队力量充分发挥个人潜能。命中率高 覆盖率难以保证优缺点:优缺点:3.53.5场景法场景法现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。这种在软件设计方面的思想也可引入到软件测试中,可以比较生动地描绘出事件触发时的情景,有利

28、于测试设计者设计测试用例,同时使测试用例更容易理解和执行。提出这种测试思想的是Rational 公司,并在RUP2000 中文版当中有其详尽的解释和应用。用例场景用来描述流经用例的路径,从用例开始到结束遍历这条路径上所有基本流和备选流。基本流和备选流基本流和备选流 右图中经过用例的每条路径都右图中经过用例的每条路径都用基本流和备选流来表示,直用基本流和备选流来表示,直黑线表示基本流,是经过用例黑线表示基本流,是经过用例的最简单的路径。备选流用不的最简单的路径。备选流用不同的彩色表示,一个备选流可同的彩色表示,一个备选流可能从基本流开始,在某个特定能从基本流开始,在某个特定条件下执行,然后重新加

29、入基条件下执行,然后重新加入基本流中(如备选流本流中(如备选流 1 1 和和 3 3););也可能起源于另一个备选流也可能起源于另一个备选流(如备选流(如备选流 2 2),或者终止用),或者终止用例而不再重新加入到某个流例而不再重新加入到某个流(如备选流(如备选流 2 2 和和 4 4)。)。基本流和备选流基本流和备选流按照上图中每个经过用例的路径,可以确定以下不同的用例场景:按照上图中每个经过用例的路径,可以确定以下不同的用例场景:v 场景场景 1 1 基本流基本流v 场景场景 2 2 基本流基本流 备选流备选流 1 1v 场景场景 3 3 基本流基本流 备选流备选流 1 1 备选流备选流 2 2v 场景场景 4 4 基本流基本流 备选流备选流 3 3v 场景场景 5 5 基本流基本流 备选流备选流 3 3 备选流备选流 1 1v 场景场景 6 6 基本流基本流 备选流备选流

温馨提示

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

评论

0/150

提交评论