软件测试实践教程 教学课件 ppt 作者 路晓丽 第3章 黑盒测试

上传人:E**** 文档编号:89362028 上传时间:2019-05-24 格式:PPT 页数:52 大小:1.21MB
返回 下载 相关 举报
软件测试实践教程 教学课件 ppt 作者 路晓丽 第3章 黑盒测试_第1页
第1页 / 共52页
软件测试实践教程 教学课件 ppt 作者 路晓丽 第3章 黑盒测试_第2页
第2页 / 共52页
软件测试实践教程 教学课件 ppt 作者 路晓丽 第3章 黑盒测试_第3页
第3页 / 共52页
软件测试实践教程 教学课件 ppt 作者 路晓丽 第3章 黑盒测试_第4页
第4页 / 共52页
软件测试实践教程 教学课件 ppt 作者 路晓丽 第3章 黑盒测试_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《软件测试实践教程 教学课件 ppt 作者 路晓丽 第3章 黑盒测试》由会员分享,可在线阅读,更多相关《软件测试实践教程 教学课件 ppt 作者 路晓丽 第3章 黑盒测试(52页珍藏版)》请在金锄头文库上搜索。

1、第3章 黑盒测试,3.1 黑盒测试概述 3.2 黑盒测试的主要测试用例设计方法 3.3 黑盒测试的典型案例,3.1 黑盒测试概述,黑盒测试是一种从用户观点出发的测试。用这种方法进行测试时,把被测试程序当作一个黑盒,在不考虑程序内部结构和内部特性,测试者只知道该程序的输入和输出之间的关系或程序的功能的情况下,依靠能够反映这一关系和程序功能需求规格的说明书,来确定测试用例和推断测试结果的正确性。软件的黑盒测试被用来证实软件功能的正确性和可操作性。 黑盒测试主要的测试依据是产品说明书,可以将黑盒测试分为静态黑盒测试和动态黑盒测试。,3.2 黑盒测试的主要测试用例设计方法,3.2.1 等价类划分 3.

2、2.2边界值分析 3.2.3 因果图 3.2.4 判定表驱动测试 3.2.5 正交实验设计法 3.2.6 用例场景法,3.2.1 等价类划分,等价类:是指某个输入域的子集合。 划分等价类可分为两种情况: (1)有效等价类 是指对软件规格说明而言,是有意义的、合理的输入数据所组成的集合。 (2)无效等价类 是指对软件规格说明而言,是无意义的、不合理的输入数据所构成的集合。,1.等价类的划分原则,(1)按照区间划分 在输入条件规定了取值范围或值的个数的情况下,可以确定一个有效等价类和两个无效等价类。,例:程序输入条件为小于100大于10的整数x,则有效等价类为10x100,两个无效等价类为x10和

3、x100。,例:程序输入x取值于一个固定的枚举类型1,3,7,15,且程序 中对这4个数值分别进行了处理,则有效等价类为x=1、x=3、 x=7、x=15,无效等价类为x1,3,7,15的值的集合。,(2)按照数值划分 在规定了一组输入数据(假设包括 n个 输入值),并且程序要对每一个输入值分别进行处理的情况下,可确定 n 个有效等价类(每个值确定一个有效等价类)和一个无效等价类(所有不允许的输入值的集合)。,等价类的划分原则(续),(3)按照数值集合划分 在输入条件规定了输入值的集合或规定了“必须如何”的条件下,可以确定一个有效等价类和一个无效等价类(该集合有效值之外)。,例:程序输入条件为

4、取值为奇数的整数x,则有效等价类为x的值为奇数的整数,无效等价类为x的值不为奇数的整数。,例:程序输入条件为以字符a开头、长度为8的字符串,并且字符串不包含a z之外的其它字符,则有效等价类为满足了上述所有条件的字符串,无效等价类为不以a开头的字符串、长度不为8的字符串和包含了a z之外其它字符的字符串。,(5)细分等价类 在确知已划分的等价类中各元素在程序中的处理方式不同的情况下,则应再将该等价类进一步划分为更小的等价类,并建立等价类表。,(4)按照限制条件或规则划分 在规定了输入数据必须遵守的规则或限制条件的情况下,可确定一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。

5、,2.等价类划分法的测试用例设计,在设计测试用例时,应同时考虑有效等价类和无效等价类测试用例的设计。 根据已列出的等价类表可确定测试用例,具体过程如下: (1)首先为等价类表中的每一个等价类分别规定一个唯一的编号。 (2)设计一个新的测试用例,使它能够尽量覆盖尚未覆盖的有效等价类。重复这个步骤,直到所有的有效等价类均被测试用例所覆盖。 (3)设计一个新的测试用例,使它仅覆盖一个尚未覆盖的无效等价类。重复这一步骤,直到所有的无效等价类均被测试用例所覆盖。,3.2.2 边界值分析法,边界值分析法:就是对输入或输出的边界值进行测试的一种黑盒测试方法。 通常情况下,软件测试所包含的边界检验有几种类型:

6、 数字、字符、位置、质量、大小、速度、方位、尺寸、 空间等 相应地,以上类型的边界值应该在:最大/最小、首位/末位、上/下、最快/最慢、最高/最低、 最短/最长、 空/满等情况下,3.2.3因果图法,因果图法的定义:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。,因果图基本符号,因果图中用来表示4种因果关系的基本符号:,因果图中的约束,因果图中的约束 在实际问题中输入状态相互之间、输出状态相互之间可能存在某些依赖关系,称为“约束”。对于输入条件的约束有E、I、O、R四种约束,对于输出条件的约束只有M约束。 E约束(异):a和b中最多有一

7、个可能为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。,因果图(续),因果图中用来表示约束关系的约束符号:,因果图生成测试用例的基本步骤:,(1)分析软件规格说明中哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。 (2)分析软件规格说明中的语义,找出原因与结果之间、原因与原因之间对应的关系, 根据这些关系画出因果图。

8、(3)由于语法或环境的限制,有些原因与原因之间、原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号表明约束或限制条件。 (4)把因果图转换为决策表。 (5)根据决策表中的每一列设计测试用例。,3.2.4 判定表驱动测试,决策表的概念:决策表是分析和表达多逻辑条件下执行不同操作的情况的工具。,判定表的组成,决策表通常由以下4部分组成: 条件桩列出问题的所有条件 条件项针对条件桩给出的条件列出所有可能的取值 动作桩列出问题规定的可能采取的操作 动作项指出在条件项的各组取值情况下应采取的动作,将任何一个条件组合的特定取值及相应要执行的动作称为一条规则。在决策表中贯穿条件项和

9、动作项的一列就是一条规则。,3.2.5正交实验设计法,正交实验设计法解决的问题 正交实验设计法概念 用正交表设计测试用例,正交实验设计法解决的问题,选择高效的测试用例(测试用例很多时)? 例如:114系统查询企业电话,测试人员如何设计测试用例呢? 全部测试 部分测试 用正交表设计测试用例,正交实验设计法解决的问题,全部测试: 25=32(0-不填;1-填),正交实验设计法解决的问题,部分测试 测试没把握,正交实验设计法解决的问题,利用正交表(红色),补充可疑测试用例(蓝色),正交试验法的基本概念,因素(factor): 在一项试验中,凡欲考察的变量称为因素(变量) 水平(Level ) 在试验

10、范围内,因素被考察的值称为水平(变量的取值) 正交试验法: 是研究多因素多水平的一种设计方法,它是根据正交性从 全面试验中挑选出部分有代表性的点进行试验,这些有代 表性的点具备了 表性的点具备了“均匀分散,齐整可比”的特点,正交试验 设计是一种基于正交表 的、高效率、快速、经济的试验 设计方法 正交表的查找 数理统计、试验设计等方面的书及附录中,场景:软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景。 这种在软件设计方面的思想也可以引入到软件测试中,可以比较生动地描绘出事件触发时的情景,有利于测试设计者设计测试用例,同时使测试用例更容易理解和执行。,3.2.6 场景法,场景说明

11、,3.3 黑盒测试的典型案例 例1:,等价类划分法的经典例子是三角形问题。请按照以下题意,使用等价类划分法设计测试用例。 某程序规定:“输入三个整数作为三边的边长构成三角形。当此三角形为一般三角形、等腰三角形及等边三角形时,分别做计算”。试用等价类划分方法为该程序的构成三角形部分进行测试用例设计。 使用等价类划分方法必须仔细分析题目给出的要求,本题分析如下: 输入条件的关键之处有:整数、三个数、非零数、正数 输出条件的关键之处有:应满足两边之长大于第三边、等腰、等边,所有等价类,覆盖有效等价类测试用例,覆盖无效等价类测试用例,3.3 黑盒测试的典型案例 例2:,请按照以下题意,使用等价类划分法

12、设计测试用例。 某城市电话号码由三部分组成,分别是: 地区码 空白或三位数字; 前 缀 非0或1开头的三位数字; 后 缀 4位数字。,所有等价类,测试用例,3.3 黑盒测试的典型案例 例3:边界值分析法测试用例,例3:有两个输入变量x1(ax1b)和x2(cx2d)的程序F的边界值分析测试用例如下: , , ,, , , , , , , , (边界值的设计与变量的数据类型有关),3.3 黑盒测试的典型案例 例4:边界值分析法测试用例,有函数f(x,y,x),其中x1900,2100,y1,12,z1,31的。请写出该函数采用边界值分析法设计的测试用例。 根据边界值分析法,在x、y和z的边界附近

13、选择测试用例,并补充了一个正常测试用例如下所示: , , , , , , , , , , , , ,3.3 黑盒测试的典型案例 例5:因果图法测试用例,程序的规格说明要求:输入的第一个字符必须是#或*,第二个字符必须是一个数字,此情况下进行文件的修改;如果第一个字符不是#或*,则给出信息N,如果第二个字符不是数字,则给出信息M。,因果图法测试举例(续),(1)分析程序规格说明中的原因和结果: (2)画出因果图(编号为10的中间结点是导出结果的进一步原因):,因果图法测试举例(续),(3)将因果图转换成如下所示的决策表:,规则,选项,因果图法测试举例(续),(4)根据决策表中的每一列设计测试用例

14、:,3.3 黑盒测试的典型案例 例6:判定表法测试举例,为了获得下一个日期,NextDate函数执行如下操作: 如果输入日期不是当月最后一天,则把day变量的值加1; 如果输入日期是111月份中某月的最后一天,则把day变量的值复位为1,month变量的值加1; 如果输入日期是12月的最后一天,则day变量和month变量的值都复位为1,year变量的值加1。 关于最后一天的判断: 如果是有31天的月份(1,3,5,7,8,10,12),day变量值为31; 如果是有30天的月份(4,6,9,11), day变量值为30; 如果是有29天的月份(闰年的2月),day变量值为29; 如果是有28

15、天的月份(非闰年的2月),day变量值为28。,案例分析,month变量的有效等价类: M1: month=4,6,9,11 M2: month=1,3,5,7,8,10 M3: month=12 M4: month=2 day变量的有效等价类: D1: 1day26 D2: day=27 D3: day=28 D4: day=29 D5: day=30 D6: day=31 year变量的有效等价类: Y1: year是闰年 Y2: year不是闰年 根据所执行的操作,可列出NextDate函数的动作桩: a1: 不可能;a2: day加1;a3: day复位;a4: month加1;a5:

16、 month复位;a6: year加1,nextdate决策表,简化后的nextdate决策表,根据上表设计的测试用例,3.3 黑盒测试的典型案例 例7:场景法测试举例: ATM系统举例,用例模型,ATM “提款”用例:基本流,本用例的开端是 ATM 处于准备就绪状态。 准备提款 - 客户将银行卡插入 ATM 机的读卡机。 验证银行卡 - ATM 机从银行卡的磁条中读取帐户代码,并检查它是否属于可以接收的银行卡。 输入 PIN - ATM 要求客户输入 PIN 码(4 位) 验证帐户代码和 PIN - 验证帐户代码和 PIN 以确定该帐户是否有效以及所输入的 PIN 对该帐户来说是否正确。对于此事件流,帐户是有效的而且 PIN 对此帐户来说正确无误。 ATM 选项 - ATM 显示在本机

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号