




已阅读5页,还剩65页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
A Free sample background from Slide 1 第三章 黑盒测试及其用例的设计 第3讲 黑盒测试及其用例的设计 3.1 测试用例设计概述 3.2 黑盒测试法的概念 3.3 三角形问题与NextDate函数 3.4 等价类划分法 3.5 边界值分析法 3.6 因果图法 3.7 决策表法 3.8 错误推测法 3.9 测试方法的选择 A Free sample background from Slide 2 第三章 黑盒测试及其用例的设计 本讲教学目标 n理解黑盒测试方法的基本概念 n理解黑盒测试的两个典型问题 n掌握黑盒测试的等价类划分法 n掌握黑盒测试的边界值分析法 n掌握黑盒测试的因果图测试法和决策表法 A Free sample background from Slide 3 第三章 黑盒测试及其用例的设计 3.1 测试用例设计概述 3.1.1 测试用例的定义和特征 3.1.2 测试用例的基本准则 3.1.3 测试用例设计书写标准 ReturnReturn A Free sample background from Slide 4 第三章 黑盒测试及其用例的设计 3.1.1 测试用例的定义和特征 n测试用例的定义: (1)测试用例是为特定的目的而设计的一组测试输入、 执行条件和预期的结果。 (2)测试用例是执行的最小实体。 n良好测试用例的特征: (1)最有可能抓住错误的; (2)不是重复的、多余的; (3)一组相似测试用例中最有效的; (4)既不过分复杂、也不能过分简单 A Free sample background from Slide 5 第三章 黑盒测试及其用例的设计 3.1.2 设计测试用例的基本准则 n测试用例的代表性 能够代表并覆盖各种合理的和不合理的、合法的和非法 的、边界的和越界的以及极限的输入数据、操作和环境设 置等。 n测试结果的可判定性 即测试执行结果的正确性是可判定的,每一个测试用例 都应有相应的期望结果。 n测试结果的可再现性 即对同样的测试用例,系统的执行结果应当是相同的。 A Free sample background from Slide 6 第三章 黑盒测试及其用例的设计 3.1.3 测试用例设计书写标准 在ANSI/IEEE829-1983标准中列出了和测试设计相关的 测试用例编写规范和模板。标准模板中主要元素如下: n标识符惟一标识每一个测试用例 n测试项准确的描述所需要测试的项及其特征 n测试环境要求表征执行该测试用例需要的测试环境 n输入标准执行测试用例的输入需求(这些输入可能 包括数据、文件或者操作) n输出标准按照指定的环境和输入标准得到的期望输 出结果 n测试用例之间的关联标识该测试用例与其它的测试 (或其它测试用例)之间的依赖关系 A Free sample background from Slide 7 第三章 黑盒测试及其用例的设计 测试用例的组成元素与范例 n测试用例编号ID n测试的模块 n测试用例标题 测试输入条件 期望的输出结果 其它说明 ID测试 项 标题测试步骤期望的结果说明 001登录输入正确密 码 用户在登录界面输入正确的密 码后,按回车键 程序提示登录成 功 002登录输入错误密 码 用户在登录界面输入错误的密 码后,按回车键 程序提示输入密 码错误,请重新 输入 003登录不输入的空 密码 用户在登录界面没有输入任何 密码使密码为空后,按回车键 程序提示用户没 有输入密码,请 输入 程序应该告知 用户没有输入 密码,而不是 密码错误 范例:205页测试用例 A Free sample background from Slide 8 第三章 黑盒测试及其用例的设计 3.2 黑盒测试法的概念 ReturnReturn n黑盒测试被称为功能测试或数据驱动测试。在测试时,把被 测程序视为一个不能打开的黑盒子,在完全不考虑程序内部 结构和内部特性的情况下进行。 n采用黑盒测试的目的主要是在已知软件产品所应具有的功能 的基础上,进行: (1)检查程序功能能否按需求规格说明书的规定正常使用, 测试各个功能是否有遗漏,检测性能等特性要求是否满足。 (2)检测人机交互是否错误,程序是否能适当地接收输入数 据而产生正确的输出结果,并保持外部信息(如数据库或文 件)的完整性。 (3)检测程序初始化和终止方面的错误。 A Free sample background from Slide 9 第三章 黑盒测试及其用例的设计 3.3 三角形问题与NextDate函数 1、三角形问题 输入三个整数a、b、c,分别作为三角形的三条边,现 通过程序判断由三条边构成的三角形的类型为等边三角形、 等腰三角形、一般三角形(特殊的还有直角三角形),以及 构不成三角形。 现在要求输入三个整数a、b、c,必须满足以下条件: 条件1 1a100 条件4 a100100 A Free sample background from Slide 17 第三章 黑盒测试及其用例的设计 等价类的划分原则(续) n进行等价类划分的依据: 例:例:程序输入程序输入x x取值于一个固定的枚举类型取值于一个固定的枚举类型1,3,7,151,3,7,15,且程序,且程序 中对这中对这4 4个数值分别进行了处理,则有效等价类为个数值分别进行了处理,则有效等价类为x=1x=1、x=3x=3、 x=7 x=7、x=15x=15,无效等价类为,无效等价类为x1,3,7,15x1,3,7,15的值的集合。的值的集合。 (2)按照数值划分 在规定了一组输入数据(假设包括 n个 输入值),并且程序要对每一个输入值分别进行处理的情况 下,可确定 n 个有效等价类(每个值确定一个有效等价类) 和一个无效等价类(所有不允许的输入值的集合)。 例:例: 输入条件说明学历可为:专科、本科、硕士、博士四种输入条件说明学历可为:专科、本科、硕士、博士四种 之一,则分别取这四种作为四个有效等价类,把四种学历之外之一,则分别取这四种作为四个有效等价类,把四种学历之外 的任何学历作为无效等价类。的任何学历作为无效等价类。 A Free sample background from Slide 18 第三章 黑盒测试及其用例的设计 等价类的划分原则(续) (3)按照数值集合划分 在输入条件规定了输入值的集合或 规定了“必须如何”的条件下,可以确定一个有效等价类和一个 无效等价类(该集合有效值之外)。 例:例:程序输入条件为取值为奇数的整数程序输入条件为取值为奇数的整数x x,则有效等价类为,则有效等价类为x x 的值为奇数的整数,无效等价类为的值为奇数的整数,无效等价类为x x的值不为奇数的整数。的值不为奇数的整数。 例:例:程序输入条件为以字符程序输入条件为以字符 aa开头、长度为开头、长度为8 8的字符串,并且的字符串,并且 字符串不包含字符串不包含 a a z z之外的其它字符,则有效等价类为满足了之外的其它字符,则有效等价类为满足了 上述所有条件的字符串,无效等价类为不以上述所有条件的字符串,无效等价类为不以 aa开头的字符串、开头的字符串、 长度不为长度不为8 8的字符串和包含了的字符串和包含了 a a z z之外其它字符的字符串。之外其它字符的字符串。 (5)细分等价类 在确知已划分的等价类中各元素在程序中 的处理方式不同的情况下,则应再将该等价类进一步划分为 更小的等价类,并建立等价类表。 (4)按照限制条件或规则划分 在规定了输入数据必须遵守 的规则或限制条件的情况下,可确定一个有效等价类(符合 规则)和若干个无效等价类(从不同角度违反规则)。 A Free sample background from Slide 19 第三章 黑盒测试及其用例的设计 3.4.2 等价类划分法的测试用例设计 n在设计测试用例时,应同时考虑有效等价类和无效等价类 测试用例的设计。 n根据已列出的等价类表可确定测试用例,具体过程如下: (1)首先为等价类表中的每一个等价类分别规定一个唯一 的编号。 (2)设计一个新的测试用例,使它能够尽量覆盖尚未覆盖 的有效等价类。重复这个步骤,直到所有的有效等价类均 被测试用例所覆盖。 (3)设计一个新的测试用例,使它仅覆盖一个尚未覆盖的 无效等价类。重复这一步骤,直到所有的无效等价类均被 测试用例所覆盖。 A Free sample background from Slide 20 第三章 黑盒测试及其用例的设计 3.4.3使用等价类划分法测试的实例 n实例1 某报表处理系统要求用户输入处理报表的日期,日期 限制在2003年1月至2011年12月,及系统只能对该段期间内 的报表进行处理,如日期不在此范围内,则显示输入错误。 系统日期规定由年、月的6位数字字符组成,前四位代表年, 后两位代表月。如何用等价类划分法设计测试用例,来测试 程序的日期检查功能? A Free sample background from Slide 21 第三章 黑盒测试及其用例的设计 (1)划分等价类 n根据对报表日期的限制可以划分为3个有效等价类,7个无 效等价类。 输入数据有效等价类无效等价类 报表日期的类型及 长度 (1)6位数字字 符 (4)有非数字字符 (5)少于6个数字符 (6)多于6个数字符 年份范围(2)在 20032011之间 (7)2011 月份范围(3)在112之 间 (9)12 “报表日期”输入条件的等价类表 A Free sample background from Slide 22 第三章 黑盒测试及其用例的设计 (2)为有效等价类设计测试用例 n对上表中(1)、(2)、(3)的3个有效等价类,用一个测 试用例覆盖。 测试数据测试结果覆盖范围 200405输入有效等价类(1)(2)(3) 有效等价类测试用例 A Free sample background from Slide 23 第三章 黑盒测试及其用例的设计 (3)为无效等价类设计测试用例 n为每一个无效等价类至少设计一个测试用例。 测试数据测试结果覆盖范围 2004my输入无效等价类(4) 20045输入无效等价类(5) 2005003输入无效等价类(6) 200106年份错误等价类(7) 202005年份错误等价类(8) 200900月份错误等价类(9) 200919月份错误等价类(10) 无效等价类测试用例 A Free sample background from Slide 24 第三章 黑盒测试及其用例的设计 3.4.4 使用等价类划分法测试的实例 n实例2 三角形问题 分析:在多数情况下,是从输入域划分等价类的,但并非不能 从被测程序的输出域反过来定义等价类,事实上,这对于三 角形问题却是最简单的划分方法。 在三角形问题中,有四种 可能的输出:等边三角形、等腰三角形、一般三角形和非三 角形。利用这些信息能够确定下列输出(值域)等价类。 R1 = : 边为a,b,c的等边三角形 R2 = : 边为a,b,c的等腰三角形 R3 = : 边为a,b,c的一般三角形 R4 = : 边为a,b,c不能组成三角形 A Free sample background from Slide 25 第三章 黑盒测试及其用例的设计 三角形问题 测试用例abc预期输出 Test1101010等边三角形 Test210105等腰三角形 Test3345一般三角形 Test4412非三角形 三角形问题的4个标准等价类测试用例 A Free sample background from Slide 26 第三章 黑盒测试及其用例的设计 三角形问题 测试用例abc预期输出 Test1567一般三角形 Test2-155a值超出输入值定义域 Test35-15b值超出输入值定义域 Test455-1c值超出输入值定义域 Test510155a值超出输入值定义域 Test651015b值超出输入值定义域 Test755101c值超出输入值定义域 三角形问题的7个健壮等价类测试用例 A Free sample background from Slide 27 第三章 黑盒测试及其用例的设计 使用等价类划分法测试的实例(续) n实例3 保险公司计算保费费率的程序 某保险公司的人寿保险的保费计算方式为: 投保额保险费率 其中,保险费率依点数不同而有别,10点及10点以上保险 费率为0.6%,10点以下保险费率为0.1%;而点数又是由 投保人的年龄、性别、婚姻状况和抚养人数来决定,具体 规则如下: 年龄 性别婚姻抚养人数 2039 4059 其它 M F 已婚 未婚 1人扣0.5点 最多扣3点 (四舍五入取整) 6点 4点 2点 5点 3点 3点 5点 A Free sample background from Slide 28 第三章 黑盒测试及其用例的设计 计算保费费率的程序 (1)分析程序规格说明中给出和隐含的对输入条件的要求, 列出等价类表(包括有效等价类和无效等价类)。 n年龄:一位或两位非零整数,值的有效范围为199 n性别:一位英文字符,只能取值M或F n婚姻:字符,只能取值已婚或未婚 n抚养人数:空白或一位非零整数 (2)根据(1)中的等价类表,设计能覆盖所有等价类的 测试用例。 等价类表测试用例 A Free sample background from Slide 29 第三章 黑盒测试及其用例的设计 数据输入有效等价类无效等价类 年龄(1)20200 (2) 40 年龄60 性别(4)M(13)除M、F的其他一 个或多个字符 (5)F 婚姻(6)已婚(14)除已婚、未婚的其 他输入 (7)未婚 抚养人数(8)0(18)其他字符 (19)6人 A Free sample background from Slide 30 第三章 黑盒测试及其用例的设计 测试用例 编号 输入数据预期输出 年龄性别婚姻抚养人数保险费率 127F未婚空白0.6% 250M已婚20.6% 370F已婚70.1% 40M未婚空白无法推算 5100F已婚3无法推算 699男已婚4无法推算 71Child未婚空白无法推算 845N已婚5无法推算 938F离婚1无法推算 1062M已婚没有无法推算 1118F未婚0无法推算 1240M未婚10无法推算 A Free sample background from Slide 31 第三章 黑盒测试及其用例的设计 习题 nNextDate函数 请使用等价类划分法为NextDate函数列出输入域 等价类表,并设计相应的测试用例。 A Free sample background from Slide 32 第三章 黑盒测试及其用例的设计 3.5 边界值分析法 3.5.1 边界值分析法概要 3.5.2 边界值分析法测试用例 3.5.3 边界值分析法测试举例 A Free sample background from Slide 33 第三章 黑盒测试及其用例的设计 3.5.1 边界值分析法概要 n边界值分析法就是对输入或输出的边界值进行测试的一种 黑盒测试方法。通常边界值分析法是作为对等价类划分法 的补充,这种情况下,其测试用例来自等价类的边界。 n为什么使用边界值分析法? 无数的测试实践表明,大量的故障往往发生在输入定义域 或输出值域的边界上,而不是在其内部。因此,针对各种 边界情况设计测试用例,通常会取得很好的测试效果。 n怎样用边界值分析法设计测试用例? (1)首先确定边界情况。通常输入或输出等价类的边界就是 应该着重测试的边界情况。 (2)选取正好等于、刚刚大于或刚刚小于边界的值作为测试 数据,而不是选取等价类中的典型值或任意值。 A Free sample background from Slide 34 第三章 黑盒测试及其用例的设计 举例 常见的边界值 n对16-bit 的整数而言 32767 和 -32768 是边界 n屏幕上光标在最左上、最右下位置 n报表的第一行和最后一行 n数组元素的第一个和最后一个 n循环的第 0 次、第 1 次和倒数第 2 次、最后一次 A Free sample background from Slide 35 第三章 黑盒测试及其用例的设计 边界值分析(续) n通常情况下,软件测试所包含的边界检验有几种类型: 数字、字符、位置、质量、大小、速度、方位、尺寸、 空间等 n相应地,以上类型的边界值应该在: 最大/最小、首位/末位、上/下、最快/最慢、最高/最低、 最短/最长、 空/满等情况下 实例分析 A Free sample background from Slide 36 第三章 黑盒测试及其用例的设计 举例 利用边界值作为测试数据 项边界值测试用例的设计思路 字符 起始-1个字 符/结束+1 个字符 假设一个文本输入区域允许输入1个到255个 字 符,输入1个和255个字符作为有效等价类;输 入0个和256个字符作为无效等价类,这几个数 值都属于边界条件值。 数值 最小值-1/ 最大值+1 假设某软件的数据输入域要求输入5位的数据 值,可以使用10000作为最小值、99999作为最 大值;然后使用刚好小于5位和大于5位的 数值 来作为边界条件。 空间 小于空余 空间一点/ 大于满空 间一点 例如在用U盘存储数据时,使用比剩余磁盘空 间大一点(几KB)的文件作为边界条件。 A Free sample background from Slide 37 第三章 黑盒测试及其用例的设计 内部边界值分析 n在多数情况下,边界值条件是基于应用程序的功能设计而 需要考虑的因素,可以从软件的规格说明或常识中得到, 也是最终用户可以很容易发现问题的。然而,在测试用例 设计过程中,某些边界值条件是不需要呈现给用户的,或 者说用户是很难注意到的,但同时确实属于检验范畴内的 边界条件,称为内部边界值条件或子边界值条件。 n内部边界值条件主要有下面几种: 数值的边界值检验 字符的边界值检验 其它边界值检验 n 小结: 在实际的测试用例设计中,需要将基本的软件设计要求 和程序定义的要求结合起来,即结合基本边界值条件和内部 边界值条件来设计有效的测试用例。 A Free sample background from Slide 38 第三章 黑盒测试及其用例的设计 数值的边界值检验 n计算机是基于二进制进行工作的,因此,软件的任何数值 运算都有一定的范围限制。 项范围或值 位(bit)0 或 1 字节(byte)0 255 字(word)065535(单字)或 04294967295(双字) 千(K)1024 兆(M)1048576 吉(G) 1073741824 计算机数值运算的范围计算机数值运算的范围 A Free sample background from Slide 39 第三章 黑盒测试及其用例的设计 字符的边界值检验 n在计算机软件中,字符也是很重要的表示元素,其中ASCII 和Unicode是常见的编码方式。下表中列出了一些常用字符 对应的ASCII码值。 字符ASCII码值字符ASCII码值 空 (null)0A65 空格 (space)32a97 斜杠 ( / )47Z90 048z122 冒号 ( : )58单引号 ( )96 64 A Free sample background from Slide 40 第三章 黑盒测试及其用例的设计 选择测试用例的原则 (1) 如果输入条件规定了值的范围,则应取刚达到这个范围的 边界值以及刚刚超过这个范围边界的值作为测试输入数据。 (2) 如果输入条件规定了值的个数,则用最大个数、最小个数 和比最大个数多1个、比最小个数少1个的数作为测试数据。 (3) 根据程序规格说明的每个输出条件,使用原则 (1)。 (4) 根据程序规格说明的每个输出条件,使用原则 (2) 。 (5) 如果程序的规格说明给出的输入域或输出域是有序集合 (如有序表、顺序文件等),则应选取集合中的第一个和 最后一个元素作为测试用例。 (6) 如果程序中使用了一个内部数据结构,则应当选择这个内 部数据结构的边界上的值作为测试用例。 (7) 分析程序规格说明,找出其它可能的边界条件。 A Free sample background from Slide 41 第三章 黑盒测试及其用例的设计 n实例1 三角形问题的边界值分析测试用例 在三角形问题描述中,除了要求边长是整数外,没有 给出其它的限制条件。在此,我们将三角形每边边长的取 范围值设值为1, 100 。 说明:如果程序规格说明中没有显式地给出边界值,则可 以在设计测试用例前先设定取值的下限值和上限值。 n实例2 NextDate函数的边界值分析测试用例 在NextDate函数中,隐含规定了变量mouth和变量day 的取值范围为1mouth12和1day31,并设定变量year 的取值范围为1912year2050 。 3.5.3 边界值分析法测试举例 测试用例 测试用例 A Free sample background from Slide 42 第三章 黑盒测试及其用例的设计 测试用例abc预期输出 Test 1 Test2 Test3 Test4 Test5 60 60 60 50 50 60 60 60 50 50 1 2 60 99 100 等腰三角形 等腰三角形 等边三角形 等腰三角形 非三角形 Test6 Test7 Test8 Test9 60 60 50 50 1 2 99 100 60 60 50 50 等腰三角形 等腰三角形 等腰三角形 非三角形 Test10 Test11 Test12 Test13 1 2 99 100 60 60 50 50 60 60 50 50 等腰三角形 等腰三角形 等腰三角形 非三角形 A Free sample background from Slide 43 第三章 黑盒测试及其用例的设计 测试用例mouth dayyear预期输出 Test 1 Test2 Test3 Test4 Test5 Test6 Test7 6 6 6 6 6 6 6 15 15 15 15 15 15 15 1911 1912 1913 1975 2049 2050 2051 1911.6.16 1912.6.16 1913.6.16 1975.6.16 2049.6.16 2050.6.16 2051.6.16 Test8 Test9 Test10 Test11 Test12 Test13 6 6 6 6 6 6 -1 1 2 30 31 32 2001 2001 2001 2001 2001 2001 day超出131 2001.6.2 2001.6.3 2001.7.1 输入日期超界 day超出131 Test14 Test15 Test16 Test17 Test18 Test19 -1 1 2 11 12 13 15 15 15 15 15 15 2001 2001 2001 2001 2001 2001 Mouth超出112 2001.1.16 2001.2.16 2001.11.16 2001.12.16 Mouth超出112 A Free sample background from Slide 44 第三章 黑盒测试及其用例的设计 习题 n找零钱最佳组合 假设商店货品价格(R) 都不大于100元(且为整数), 若顾客付款(P)在100元内,现有一个程序能在每位顾客付 款后给出找零钱的最佳组合(找给顾客货币张数最少)。 假定此商店的货币面值只包括:50元(N50)、10元(N10)、 5元(N5)、1元(N1) 四种。 请结合等价类划分法和边界值分析法为上述程序设计 出相应的测试用例。 A Free sample background from Slide 45 第三章 黑盒测试及其用例的设计 3.6 因果图法 3.6.1 因果图法的简介 3.6.2 因果图 3.6.3 因果图法测试举例 A Free sample background from Slide 46 第三章 黑盒测试及其用例的设计 3.6.1 因果图法的简介 n因果图法产生的背景: 等价类划分法和边界值分析方法都是着重考虑输入条 件,但没有考虑输入条件的各种组合、输入条件之间的相 互制约关系。这样虽然各种输入条件可能出错的情况已经 测试到了,但多个输入条件组合起来可能出错的情况却被 忽视了。 如果在测试时必须考虑输入条件的各种组合,则可能 的组合数目将是天文数字,因此必须考虑采用一种适合于 描述多种条件的组合、相应产生多个动作的形式来进行测 试用例的设计,这就需要利用因果图(逻辑模型)。 A Free sample background from Slide 47 第三章 黑盒测试及其用例的设计 因果图法的简介(续) n因果图法是基于这样的一种思想:一些程序的功能可以用 判定表(或称决策表)的形式来表示,并根据输入条件的 组合情况规定相应的操作。 n因果图法的定义:是一种利用图解法分析输入的各种组合 情况,从而设计测试用例的方法,它适合于检查程序输入 条件的各种组合情况。 n采用因果图法设计测试用例的步骤: (1)根据程序规格说明书描述,分析并确定因(输入条件) 和果(输出结果或程序状态的改变),画出因果图。 (2)将得到的因果图转换为判定表。 (3)为判定表中每一列所表示的情况设计一个测试用例。 A Free sample background from Slide 48 第三章 黑盒测试及其用例的设计 因果图法的简介(续) n使用因果图法的优点: (1)考虑到了输入情况的各种组合以及各个输入情况之间 的相互制约关系。 (2)能够帮助测试人员按照一定的步骤,高效率的开发测 试用例。 (3)因果图法是将自然语言规格说明转化成形式语言规格 说明的一种严格的方法,可以指出规格说明存在的不完 整性和二义性。 A Free sample background from Slide 49 第三章 黑盒测试及其用例的设计 3.6.2 因果图 n因果图中用来表示4种因果关系的基本符号: c c1 1 e e1 1 恒等 c c1 1 e e1 1 非 c c1 1 e e1 1 或 c c2 2 c c3 3 c c1 1 e e1 1 与 c c2 2 A Free sample background from Slide 50 第三章 黑盒测试及其用例的设计 因果图(续) n因果图中的4种基本关系 在因果图的基本符号中,图中的左结点ci表示输入状 态(或称原因),右结点ei表示输出状态(或称结果)。 ci 与 ei 取值0或1,0表示某状态不出现,1则表示某状态 出现。 恒等:若 c1 是1,则 e1 也为1,否则 e1 为0。 非:若 c1 是1,则 e1 为0,否则e1为1。 或:若 c1 或 c2 或 c3 是1,则 e1 为1,否则 e1 为0。 与:若 c1 和 c2 都是1,则 e1 为1,否则 e1 为0。 A Free sample background from Slide 51 第三章 黑盒测试及其用例的设计 因果图(续) n因果图中的约束 在实际问题中输入状态相互之间、输出状态相互之间可 能存在某些依赖关系,称为“约束”。对于输入条件的约束有 E、I、O、R四种约束,对于输出条件的约束只有M约束。 E约束(异):a和b中最多有一个可能为1,即a和b不能同时 为1。 I 约束(或):a、b、c中至少有一个必须为1,即 a、b、c不 能同时为0。 O约束(唯一):a和b必须有一个且仅有一个为1。 R约束(要求):a是1时,b必须是1,即a为1时,b不能为0。 M约束(强制):若结果a为1,则结果b强制为0。 A Free sample background from Slide 52 第三章 黑盒测试及其用例的设计 因果图(续) a a b b 异 E a a b b 或 I c c a a b b 唯一 O R a a b b 要求 M a a b b 强制 n因果图中用来表示约束关系的约束符号: A Free sample background from Slide 53 第三章 黑盒测试及其用例的设计 因果图(续) n因果图法最终生成的是决策表。利用因果图生成测试用例 的基本步骤如下: (1)分析软件规格说明中哪些是原因(即输入条件或输入条 件的等价类),哪些是结果(即输出条件),并给每个原 因和结果赋予一个标识符。 (2)分析软件规格说明中的语义,找出原因与结果之间、原 因与原因之间对应的关系, 根据这些关系画出因果图。 (3)由于语法或环境的限制,有些原因与原因之间、原因与 结果之间的组合情况不可能出现。为表明这些特殊情况, 在因果图上用一些记号表明约束或限制条件。 (4)把因果图转换为决策表。 (5)根据决策表中的每一列设计测试用例。 A Free sample background from Slide 54 第三章 黑盒测试及其用例的设计 3.6.3 因果图法测试举例 n实例 用因果图法测试以下程序。 程序的规格说明要求:输入的第一个字符必须是#或*, 第二个字符必须是一个数字,此情况下进行文件的修改; 如果第一个字符不是#或*,则给出信息N,如果第二个字符 不是数字,则给出信息M。 解题步骤: (1)分析程序的规格说明,列出原因和结果。 (2)找出原因与结果之间的因果关系、原因与原因之间的约 束关系,画出因果图。 (3)将因果图转换成决策表。 (4)根据(3)中的决策表,设计测试用例的输入数据和预 期输出。 A Free sample background from Slide 55 第三章 黑盒测试及其用例的设计 因果图法测试举例(续) (1)分析程序规格说明中的原因和结果: (2)画出因果图(编号为10的中间结点是导出结果的进一步 原因): 原因结果 c1:第一个字符是# e1:给出信息N c2:第一个字符是* e2:修改文件 c3:第二个字符是一个数字 e3:给出信息M c1 c2 c3 e1 10 e2 e3 E A Free sample background from Slide 56 第三章 黑盒测试及其用例的设计 因果图法测试举例(续) (3)将因果图转换成如下所示的决策表: 12345678 条件: C1 C2 C3 10 1 1 1 1 1 0 1 0 1 1 1 0 0 1 0 1 1 1 0 1 0 1 0 0 1 0 0 0 0 0 动作: e1 e2 e3 不可能 测试用例#3#A*6*BA1GT 规则 选项 A Free sample background from Slide 57 第三章 黑盒测试及其用例的设计 因果图法测试举例(续) (4)根据决策表中的每一列设计测试用例: 测试用例编号输入数据预期输出 1#3修改文件 2#A给出信息M 3*6修改文件 4*B给出信息M 5A1给出信息N 6GT给出信息N和信息M A Free sample background from Slide 58 第三章 黑盒测试及其用例的设计 习题 1、使用因果图法为三角形问题设计测试用例。 2、某软件的一个模块的需求规格说明书中描述: (1)年薪制员工:严重过失,扣年终风险金的4%;过失, 扣年终风险金的2%。 (2)非年薪制员工:严重过失,扣当月薪资的8%;过失, 扣当月薪资的4%。 请绘制出因果图和判定表,并给出相应的测试用例。 A Free sample background from Slide 59 第三章 黑盒测试及其用例的设计 3.7 决策表法 3.7.1 决策表 3.7.2 决策表应用 3.7.3 决策表测试应用案例 A Free sample background from Slide 60 第三章 黑盒测试及其用例的设计 3.7.1 决策表 n在所有的黑盒测试方法中,基于决策表(也称判定表)的 测试是最为严格、最具有逻辑性的测试方法。 n决策表的概念:决策表是分析和表达多逻辑条件下执行不 同操作的情况的工具。 n决策表的优点:能够将复杂的问题按照各种可能的情况全 部列举出来,简明并避免遗漏。因此,利用决策表能够设 计出完整的测试用例集合。 n在一些数据处理问题当中,某些操作的实施依赖于多个逻 辑条件的组合,即:针对不同逻辑条件的组合值,分别执 行不同的操作。决策表很适合于处理这类问题。 决策表实例 A Free sample background from Slide 61 第三章 黑盒测试及其用例的设计 规则 选项 12345678 问 题 觉得疲倦?YYYYNNNN 感兴趣吗?YYNNYYNN 糊涂吗?YNYNYNYN 建 议 重读 继续 跳下一章 休息 “阅读指南”决策表 A Free sample background from Slide 62 第三章 黑盒测试及其用例的设计 决策表的组成 n决策表通常由以下4部分组成: 条件桩列出问题的所有条件 条件项针对条件桩给出的条件列出所有可能的取值 动作桩列出问题规定的可能采取的操作 动作项指出在条件项的各组取值情况下应采取的动作 条件桩 动作桩 条件项 动作项 规 则 将任何一个条件组合的 特定取值及相应要执行 的动作称为一条规则。 在决策表中贯穿条件项 和动作项的一列就是一 条规则。 A Free sample background from Slide 63 第三章 黑盒测试及其用例的设计 决策表的生成 n构造决策表的5个步骤: (1) 确定规则的个数。 有n个条件的决策表有2n个规则(每个条件取真、假值)。 (2) 列出所有的条件桩和动作桩。 (3) 填入条件项。 (4) 填入动作项,得到初始决策表。 (5) 简化决策表,合并相似规则。 若表中有两条以上规则具有相同的动作,并且在条件项之 间存在极为相似的关系,便可以合并。 合并后的条件项用符号“-”表示,说明执行的动作与该条件 的取值无关,称为无关条件。 三角形问题的决策表 A Free sample background from Slide 64 第三章 黑盒测试及其用例的设计 三角形问题的决策表 规则 选项 规则 1-8 规则 9 规则 10 规则 11 规则 12 规则 13 规则 14 规则 15 规则 16 条件: c1: a,b,c构成 三角形? c2: a=b? c3: a=c? c4: b=c? N - - - Y Y Y Y Y Y Y N Y Y N Y Y Y N N Y N Y Y Y N Y N Y N N Y Y N N N 动作: a1: 非三角形 a2: 一般三角形 a3: 等腰三角形 a4: 等边三角形
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 魅族17pro支持什么协议书
- 旅行社与旅行社协议书
- 单方承诺协议书
- 2025年肾脏内科慢性肾脏病患者的营养支持策略模拟测试卷答案及解析
- 2025年度郑州大学招聘工作人员(博士)500名考前自测高频考点模拟试题及答案详解(夺冠系列)
- 2025年传染病防控技术应用考核模拟试卷答案及解析
- 2025年血液科血液病诊断治疗方案考核模拟考试卷答案及解析
- 2025年运动医学抗运动损伤策略考核试题答案及解析
- 导航是协议书机
- 2025年内科病房患者体温异常处理模拟考试答案及解析
- 2025年杭州上城区总工会公开招聘工会社会工作者9人笔试参考题库附答案解析
- 2025年互联网+特殊教育行业研究报告及未来发展趋势预测
- 医院信息安全保密培训课件
- 物流紧急事件应急预案方案
- 幼儿创意玉米课件
- 《海洋学》第二章 地球及海洋概观
- GH/T 1091-2014代用茶
- GB/T 12642-2013工业机器人性能规范及其试验方法
- ESG专题研究报告
- 【初中历史】商鞅变法优秀课件31-川教版
- 食品质量与安全管理概述课件
评论
0/150
提交评论