软件测试基础等价类划分-决策表.ppt
《软件测试基础等价类划分-决策表.ppt》由会员分享,可在线阅读,更多相关《软件测试基础等价类划分-决策表.ppt(93页珍藏版)》请在三一办公上搜索。
1、,第一章 软件测试基础知识,2,测试技术简介黑盒测试技术白盒测试技术灰盒测试技术性能测试技术易用性测试技术其它测试技术手工测试和测试自动化静态测试与动态测试,本节课程内容,测试概述内容回归,什么是测试用例?为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求,是执行的最小实体。,测试用例,执行条件,测试输入,预期结果,测试概述内容回归,测试用例设计阶段所作工作对需求说明书、测试计划和原型仔细研究将待测产品分解成可独立测试的单元为每个测试单元确定采用的测试技术编写测试用例,测试脚本,测试概述内容回归,测试用例设计的误区能发现到目前为止没有发现的
2、缺陷的用例是好的用例;测试用例应该详细记录所有的操作信息,使一个没有接触过系统的人员也能进行测试;测试用例设计是一劳永逸的事情;测试用例不应该包含实际的数据;测试用例中不需要明显的验证手段;,第一章 软件测试基础知识,6,测试技术简介黑盒测试技术白盒测试技术灰盒测试技术性能测试技术易用性测试技术其它测试技术手工测试和测试自动化静态测试与动态测试,本节课程内容,第一章 软件测试基础知识,7,黑盒测试技术介绍黑盒测试用例设计方法等价类划分法边界值分析法因果图法决策表法正交试验法场景法错误推测法综合测试策略,黑盒测试技术,黑盒测试技术介绍,黑盒测试被称为功能测试或数据驱动测试,是针对软件的功能需求进
3、行测试。在测试时,把被测程序视为一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下进行。,程序结构?,输入,输出,黑盒测试技术介绍,采用黑盒测试的目的主要是在已知软件产品所应具有的功能的基础上,进行:检查程序功能能否按需求规格说明书的规定正常使用,测试各个功能是否有遗漏,检测性能等特性要求是否满足。检测人机交互是否错误,检测数据结构或外部数据库访问是否错误,程序是否能适当地接收输入数据而产生正确的输出结果,并保持外部信息(如数据库或文件)的完整性。检测程序初始化和终止方面的错误。,黑盒测试技术介绍,黑盒的划分(一),黑盒测试技术介绍,黑盒的划分(二),第一章 软件测试基础知识,1
4、2,黑盒测试技术介绍黑盒测试用例设计方法等价类划分法边界值分析法因果图法决策表法正交试验法场景法错误推测法综合测试策略,黑盒测试技术,测试用例,穷举测试,合理分类,等价类是指某个输入域的子集合,等价类划分法:依据软件需求说明对输入的范围进行细分,然后再分出的每一个区域内选取一个有代表性的测试数据开展测试。,等价类划分法,等价类划分法,等价类划分法 等价类划分法是一种重要的、常用的黑盒测试方法,它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。举例:设计这样的测试用例,来实现一个对所有实数进行开平方运算(y=sqrt(x))的程序的测试。思考方向:由于开平方运算只
5、对非负实数有效,这时需要将所有的实数(输入域x)进行划分,可以分成:正实数、0 和 负实数。假设我们选定+1.4444代表正实数,-2.345代表负实数,则为该程序设计的测试用例的输入为+1.4444、0 和-2.345。,等价类划分法,等价类划分法(续)等价类划分法是把所有可能的输入数据,即程序的输入域划分为若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。所谓等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,它们具有等价特性,即每一类的代表性数据在测试中的作用都等价于这一类中的其它数据。这样,对于表征该类的数据输入将能代表整个子
6、集合的输入。因此,可以合理的假定:测试某等价类的代表值就是等效于对于这一类其它值的测试。,等价类划分法,等价类划分具体方法如下,等价类划分法,等价类划分准则 按照区间划分 在输入条件规定了取值范围或值的个数的情况下,可以确定一个有效等价类和两个无效等价类。按照数值划分 在规定了一组输入数据(假设包括 n个 输入值),并且程序要对每一个输入值分别进行处理的情况下,可确定 n 个有效等价类(每个值确定一个有效等价类)和一个无效等价类(所有不允许的输入值的集合)。按照数值集合划分 在输入条件规定了输入值的集合或规定了“必须如何”的条件下,可以确定一个有效等价类和一个无效等价类(该集合有效值之外)。,
7、等价类划分法,等价类划分准则(续)按照限制条件或规则划分 在规定了输入数据必须遵守的规则或限制条件的情况下,可确定一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。细分等价类 在确知已划分的等价类中各元素在程序中的处理方式不同的情况下,则应再将该等价类进一步划分为更小的等价类,并建立等价类表。,等价类划分法,有效等价类和无效等价类(1)有效等价类 是指对软件规格说明而言,是有意义的、合理的输入数据所组成的集合。利用有效等价类,能够检验程序是否实现了规格说明中预先规定的功能和性能。(2)无效等价类 是指对软件规格说明而言,是无意义的、不合理的输入数据所构成的集合。利用无效等价类
8、,可以鉴别程序异常处理的情况,检查被测对象的功能和性能的实现是否有不符合规格说明要求的地方。,等价类划分法,在设计测试用例时,应同时考虑有效等价类和无效等价类测试用例的设计。根据已列出的等价类表可确定测试用例,具体过程如下:(1)首先为等价类表中的每一个等价类分别规定一个唯一的编号。(2)设计一个新的测试用例,使它能够尽量覆盖尚未覆盖的有效等价类。重复这个步骤,直到所有的有效等价类均被测试用例所覆盖。(3)设计一个新的测试用例,使它仅覆盖一个尚未覆盖的无效等价类。重复这一步骤,直到所有的无效等价类均被测试用例所覆盖。,等价类划分法,效等价类划分举例,例:程序输入x取值于一个固定的枚举类型1,3
9、,7,15,且程序 中对这4个数值分别进行了处理,则有效等价类为x=1、x=3、x=7、x=15,无效等价类为x1,3,7,15的值的集合。,例:程序输入条件为以字符a开头、长度为8的字符串,并且字符串不包含a z之外的其它字符,则有效等价类为满足了上述所有条件的字符串,无效等价类为不以a开头的字符串、长度不为8的字符串和包含了a z之外其它字符的字符串。,有效等价类:符合需求说明,合理地输入数据集合,1无效等价类1,3无效等价类100,2有效等价类1100,无效等价类:不符合需求说明,无意义地输入数据的集合,成功测试,失败测试,计算两个1100之间整数的和,等价类划分法,加法器等价类(扩展)
10、,计算两个1100之间整数的和,等价类划分法,加法器测试用例(扩展),计算两个1100之间整数的和,等价类划分法,等价类划分法,使用等价类划分法测试的实例,实例1 三角形问题分析:在多数情况下,是从输入域划分等价类的,但并非不能从被测程序的输出域反过来定义等价类,事实上,这对于三角形问题却是最简单的划分方法。在三角形问题中,有四种可能的输出:等边三角形、等腰三角形、一般三角形和非三角形。利用这些信息能够确定下列输出(值域)等价类。R1=:边为a,b,c的等边三角形 R2=:边为a,b,c的等腰三角形 R3=:边为a,b,c的一般三角形 R4=:边为a,b,c不能组成三角形,等价类划分法,使用等
11、价类划分法测试的实例,实例1 三角形问题,等价类划分法,使用等价类划分法测试的实例,实例1 三角形问题,等价类划分法,使用等价类划分法测试的实例,实例2 保险公司计算保费费率的程序 某保险公司的人寿保险的保费计算方式为:投保额保险费率 其中,保险费率依点数不同而有别,10点及10点以上保险费率为0.6%,10点以下保险费率为0.1%;而点数又是由 投保人的年龄、性别、婚姻状况和抚养人数来决定,具体规则如下:,等价类划分法,实例2 保险公司计算保费费率的程序(1)分析程序规格说明中给出和隐含的对输入条件的要求,列出等价类表(包括有效等价类和无效等价类)。年龄:一位或两位非零整数,值的有效范围为1
12、99性别:一位英文字符,只能取值M或F婚姻:字符,只能取值已婚或未婚抚养人数:空白或一位非零整数(19)点数:一位或两位非零整数,值的范围为199(2)根据(1)中的等价类表,设计能覆盖所有等价类的 测试用例,使用等价类划分法测试的实例,等价类划分法,等价类划分法,QQ帐号:6-10位数字有效的:(1)长度在6-10位之间(2)类型是0-9自然数无效的:(3)长度小于6(4)长度大于10(5)负数(6)小数(7)英文字母(8)字符(9)中文(10)空,等价类划分法,使用等价类划分法测试的实例,等价类划分法,使用等价类划分法测试的实例,用户注册页面需求:USER NAME:长度为 3-19;以字
13、母开头 姓名:非空密码:非空确认密码:值和密码值相同出生月份:年四位数字;月1-12;日1-31,合理范围,等价类划分法,使用等价类划分法测试的实例,等价类划分法,等价类划分法,等价类划分法,第一章 软件测试基础知识,38,黑盒测试技术介绍黑盒测试用例设计方法等价类划分法边界值分析法因果图法决策表法正交试验法场景法错误推测法综合测试策略,黑盒测试技术,边界值分析法,边界值分析法 边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。为什么使用边界值分析法?无数的测试实践表明,大量的故障往往发生在输入定
14、义域或输出值域的边界上,而不是在其内部。因此,针对各种边界情况设计测试用例,通常会取得很好的测试效果。怎样用边界值分析法设计测试用例?(1)首先确定边界情况。通常输入或输出等价类的边界就是应该着重测试的边界情况。(2)选取正好等于、刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值。,边界值分析法,举例 常见的边界值对16-bit 的整数而言 32767 和-32768 是边界屏幕上光标在最左上、最右下位置报表的第一行和最后一行数组元素的第一个和最后一个循环的第 0 次、第 1 次和倒数第 2 次、最后一次,边界值分析法,边界值分析使用与等价类划分法相同的划分,只是边界
15、值分析假定错误更多地存在于划分的边界上,因此在等价类的边界上以及两侧的情况设计测试用例。例:测试计算平方根的函数 输入:实数 输出:实数 规格说明:当输入一个0或比0大的数的时候,返回其正平方根;当输入一个小于0的数时,显示错误信息“平方根非法-输入值小于0”并返回0。,边界值分析法,等价类划分:可以考虑作出如下划分:输入(i)=0输出(a)=0 和(b)Error测试用例有两个:输入4,输出2。对应于(ii)和(a)。输入-10,输出0和错误提示。对应于(i)和(b)。边界值分析:划分(ii)的边界为0和最大正实数;划分(i)的边界为最小负实数和0。由此得到以下测试用例:输入 最小负实数输入
16、 绝对值很小的负数输入 0输入 绝对值很小的正数输入 最大正实数,边界值分析法,通常情况下,软件测试所包含的边界检验有几种类型:数字、字符、位置、质量、大小、速度、方位、尺寸、空间等相应地,以上类型的边界值应该在:最大/最小、首位/末位、上/下、最快/最慢、最高/最低、最短/最长、空/满等情况下,边界值分析法,举例 利用边界值作为测试数据:,边界值分析法,内部边界值分析:在多数情况下,边界值条件是基于应用程序的功能设计而需要考虑的因素,可以从软件的规格说明或常识中得到,也是最终用户可以很容易发现问题的。然而,在测试用例设计过程中,某些边界值条件是不需要呈现给用户的,或者说用户是很难注意到的,但
17、同时确实属于检验范畴内的边界条件,称为内部边界值条件或子边界值条件,小结:在实际的测试用例设计中,需要将基本的软件设计要求和程序定义的要求结合起来,即结合基本边界值条件和内部边界值条件来设计有效的测试用例。,边界值分析法,次边界数值的边界值检验:计算机是基于二进制进行工作的,因此,软件的任何数值运算都有一定的范围限制。,边界值分析法,次边界字符的边界值检验:在计算机软件中,字符也是很重要的表示元素,其中ASCII和Unicode是常见的编码方式。下表中列出了一些常用字符对应的ASCII码值。,边界值分析法,次边界其他边界:(1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界值以及刚刚超
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 基础 等价 划分 决策
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-6027993.html