大学软件测试课件.pptx
《大学软件测试课件.pptx》由会员分享,可在线阅读,更多相关《大学软件测试课件.pptx(35页珍藏版)》请在三一办公上搜索。
1、1,7.2.2 基于逻辑的测试(1),一.基于逻辑的测试 1.如果一个软件系统的需求说明包含有大量的逻辑判断或条件组 合时,则使用基于逻辑测试方法设计测试的实例。 2.基于逻辑的测试不仅可以对模块进行测试,而且也适用于单元 和系统的测试。 3.对以逻辑判断或条件组合为主的程序,可利用基于逻辑的测试, 检验程序结构的一致性和完全性。 4.基于逻辑的测试一般采用判定表方法。二.建立判定表 1.判定表由条件段、判定项、动作段和动作项组成。 2.规则表示在某些条件下程序所产生的动作。 3.判定表中的Y、N表示判定的结果真、假,I表示对应的判定对该规则 无关紧要或Y或N,动作中的Y、N表示执行或不执行该
2、动作。三.使用判定表设计实例 1.根据每一个规则和对应的动作设计测试实例; 2.测试路径的覆盖取决于规则的完全性与一致性。,http:/,17.2.2 基于逻辑的测试(1)一.基于逻辑的测试http,2,7.2.2 基于逻辑的测试(2),上述4个判定应有16个组合,上表并未覆盖全部组合,例如判定组合(Y,N,N,N)没有。要实现完全覆盖,必须提供上述规则外的其它判定组合,并把这些判定组合与缺省动作对应,组成新的缺省规则。如右上表。,缺省动作,例.如下判定表,http:/,27.2.2 基于逻辑的测试(2)规则项规则1规则2规则3规,3,7.2.2 基于逻辑的测试(3),三.与判定表中成份相关的
3、问题,判定的次序不影响对规则的解释和最终的动作。,规则执行的先后顺序不影响规则的动作。,如果一条规则产生多个动作,则动作的次序是无关紧要的。,规则是相互独立的,即一条规则条件的满足和动作的选取,与其它规则无关。,如果每个判定值的组合(包括缺省情况的组合)在判定表中都是必须的,那么称规则是完全的。反之,如果规则是不完全的,则可能存在某些判定值的组合没有动作。,如果每个判定值的组合仅产生一个动作或一组动作,那么称规则是一致的。反之,如果规则不一致,则最少存在一组判定值组合,它产生两个或多个动作(或动作组)。,扩展I项就是把每个I项变成两项:一项“Y”,一项“N”,使规则扩大一倍。如果某些判定是三元
4、判定,一个I项就扩展为三项,等等。,http:/,37.2.2 基于逻辑的测试(3) 三.与判定表中成份相关的,4,7.2.2 基于逻辑的测试(4),例1.从现金取款机中取款。,对上述三项内容:有效的信用卡、打入的密码是正确的及帐户 中有足够的存款,检查次序(判定次序)是无关紧要的,不同的检查 次序不影响取款操作。例2.判定表中判定值为I的“无关紧要”项是最容易发生错误的地方。若 某一判定取值I,表示规则不依赖于该判定值。但它可能取真值或 假值。譬如规则: R1如果一个技术员工龄超过5年,那么加薪15%; R2如果一个工人,那么加薪5%。 在此工龄对技术员加薪是重要的,对工人无关紧要。但不能认
5、 为工人的工龄不可能超过或小于5年。,取款机,http:/,47.2.2 基于逻辑的测试(4) 例1.从现金取款机中取,5,7.2.2 基于逻辑的测试(5),例3.使用判定表对程序结构进行测试,如下程序结构图:,2,http:/,57.2.2 基于逻辑的测试(5) 例3.使用判定表对程序结,6,7.2.2 基于逻辑的测试(6),例3.使用判定表对程序结构进行测试,如下程序结构图:,2,http:/,67.2.2 基于逻辑的测试(6) 例3.使用判定表对程序结,7,7.2.2 基于逻辑的测试(7),程序结构图图对应的判定表如下:,Y,Y,Y,Y,Y,Y,判定在路径上不出现的地方填入I,将出现I的
6、地方变成两项Y与N,可得到16种组合(规则),且没有两种组合是重复的。如下表所示。,从而说明上述程序结构图是完全和一致的。,http:/,77.2.2 基于逻辑的测试(7) 程序结构图图对应的,8,7.3 黑盒测试(1),一.黑盒测试也称为功能测试,它着眼于程序的外部特征,而不考虑程序 的内部逻辑结构。测试者把被测程序看成一个黑盒,不用关心程序的 内部结构。二.黑盒测试是在程序接口处进行测试,它只检查程序功能是否能按照 规格说明书的规定正常使用,程序是否能适当地接收输入数据产生 正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。三.用黑盒测试法发现程序中的错误必须用所有可能的输入数据
7、来检查 程序,看能否产生正确的输出。而这种完全的测试方法(即穷举法), 一般情况下,很难做到,所以软件测试中很难发现所有的错误,即测试并不 能证明程序是正确的。四.我们的目的是要通过测试保证软件的可靠性,只有很好设计测试方案,力 争用尽可能少的测试发现尽可能多的错误。为此需要考虑可行的技术。五.黑盒测试技术包括:等价分类法、边沿值分析法、错误推测法和因果 图等技术。,http:/,87.3 黑盒测试(1)一.黑盒测试也称为功能测试,它着眼于,9,7.3 黑盒测试(2),对被测程序在一切可能输入情况下执行一遍,称为穷举测试。 为了做到穷举测试至少必须对所有输入数据各种可能值的排列组合进行测试,但
8、对于实际程序而言,穷举测试通常是不可能做到的。 例1:一个程序有两个输入变量A,B一个输出变量C,设A,B,C都是整型变量,如果在字长为32位的计算机上运行,用黑盒法测试,则输入数据的可能性有 232 232 = 264 1.845 1019 。 假设这个程序执行一次需要10-8秒(1亿次计算机),那么用这些数据来测试这个程序大约需要5850年,这是不可能的。更不用说分析这些数据。,在白盒测试中,同样要做到穷举测试常常也是不可能的。 例2.一段程序,对嵌套IF语句循环执行20次(右图)在该段程序中共有520(约1014)条可能的执行通路,即使每一条通路执行一次也是不可能的。,http:/,97
9、.3 黑盒测试(2) 对被测程序在一切可能输入情况下执,10,7.3.1 等价分类法(1),一.等价类及其划分,某个输入集合的子集,在该等价类中每一个代表值在测试中的作用等价于这一类中的其它值。,划分等价类一般是从程序的功能说明中找出一个个输入条件,然后为每个输入条件划分两个或两个以上的等价类,其中合理等价类是指合法的输入数据,不合理等价类是指其它数据。,规定了输入值的范围。,划分出一个有效的等价类(输入值在此范围内),两个无效的等价类(输入值小于最小值或大于最大值),规定了输入数据的个数。,类似划分出一个有效的等价类,两个无效的等价类。,规定了输入数据的一组值,而且程序对不同输入值作不同处理
10、。,每个允许的输入值是一个有效的等价类,此外还有一个无效等价类(任一个不允许的输入值)。,规定了输入数据必须遵守的规则。,划分出一个有效的等价类(符合规则),若干个无效的等价类(从各种不同角度违反规则)。,程序的处理对象是表格。,使用空表、含一项的表或多项的表。,输入条件是一个布尔量,可以确定一个有效等价类和一个无效等价类。,http:/,107.3.1 等价分类法(1)一.等价类及其划分 名称,11,7.3.1 等价分类法(2),若在已划分的某一等价类中各元素在程序中的处理方式不同,则将此等价类进一步划分为更小的等价类。上述规则是针对输入数据考虑的,大部分也适用于输出数据。 划分等价类的举例
11、,输入条件取值范围是1,100。,有效等价类:“1输入数据100”;无效等价类:“输入数据1”或“输入数据100”,在程序功能规约中,规定“一名教师一学期教授一到二门课程”,有效等价类:“1教授课程2”;两个无效等价类:“不教授课程”或“教授课程2”。,在学生管理系统中,对一、二、三年级学生分别进行管理。,等价类:一年级学生、二年级学生、三年级学生无效等价类:上述三类学生以外的人员集合,若某文件中规定各数据项的关键字是首字符为K 。,一个有效等价类:首字符为K的输入值;一个无效等价类:首字符不为K的输入值。,规定了输入数据为整型。,划分出正整数、零和负整数三个有效的等价类;一个无效等价类:输入
12、字符是非整数。,http:/,117.3.1 等价分类法(2) 若在已划分的某一等价类中,12,7.3.1 等价分类法(3),二.利用等价类划分技术设计测试用例的步骤 1.为每个等价类编号; 2.设计一个新的测试方案,以尽可能多的覆盖尚未被覆盖的有效等 价类,重复这一步骤,直到所有有效等价类被覆盖为止。 3.设计一个新的测试方案,使它覆盖一个尚未被覆盖的无效等价类, 重复这一步骤,直到所有无效等价类被覆盖为止。 例.一程序实现把数字串转变成整数。假设运行程序的计算机字长 16位,用二进制补码表示整数。该程序用Pascal语言编写,其 说明如下: type shortstr=array1.6 o
13、f char; function strtiont(dstr:shortstr):integer; 设被处理的数字串是右对齐的,如果数字串少于6个字符,则在 左边补空格;如果数字串是负的,负号在最高位数字左边。 根据该程序的规格说明,作等价类的划分,并设计测试方案。,http:/,127.3.1 等价分类法(3) 二.利用等价类划分技术设计,13,7.3.1 等价分类法(4),1.等价类,1.16个字符组成的数字串(最高 位数字不是零);2.最高位数字是零的数字串;3.最高位数字左邻负号的数字串。,1.空字符串(全是空格);2.左边填充的字符不是零也不是空格;3.最高位数字右面由数字和空格组成
14、;4.最高位数字右面由数字和其它字符组成;5.负号和最高位数字之间有空格。,1.在计算机能表示的最小负整数 和零之间的负整数;2.零;3.在零和计算机能表示的最大正 整数之间的正整数。,1.比计算机能表示的最小负整数(-32768) 还小的负整数;2.比计算机能表示的最大正整数(32767) 还大的正整数。,注:216=65536 (-3276832767),http:/,137.3.1 等价分类法(4)1.等价类有效等价类无效等价,14,7.3.1 等价分类法(5),2.设计测试方案,http:/,147.3.1 等价分类法(5)2.设计测试方案方案内,15,7.3.2 边界值分析法(1),
15、一.边界值分析测试技术的主要思想 是把输入和输出范围的边界作为测试的主要目标,因为测试经验表明大量的错误经常发生在输入或输出范围的边界上。 边界值分析是一种最常用的黑盒技术。二.使用边界值分析法设计测试用例遵循的原则,规定了输入值的范围。,选择一些恰好取到边界值的数据,及刚好超过边界的数据作为测试数据。,若输入值范围是-1,1,则测试数据可选择:-1,-1.001,1,1.001。,规定了输入值的个数范围:N1N2,测试数据选择: N1,N2,N1-1,N2+1。,一个输入文件有1255个记录,选择1个、255个、0个和256个记录作测试数据。,根据规格说明的每个输出条件,使用方法1,某程序计
16、算折旧费,最低0元,最高100元。输出测试用例:恰好产生0元和100元折旧费;产生负值和大于100元折旧费。,http:/,157.3.2 边界值分析法(1)一.边界值分析测试技术的主,16,7.3.2 边界值分析法(2),根据规格说明的每一个输出条件。,使用方法2。,一个检索系统根据输入条件,要求显示10条的相关查询结果。测试用例使程序分别显示0、1、10、11个查询结果。,输入和输出域是有序集合。,选取第一个、最后一个元素及典型元素作为测试用例。,输入和输出是一个顺序文件,测试用例选择该文件的第一个、正中间一个和最后一个。,程序中使用了内部数据结构。,选择该内部数据结构边界上的值作为测试用
17、例。,程序中定义了一个数组,其元素的下标下界、上界分别为0、100,则选择下标是0和100的元素作为测试数据。,规格说明,分析规格说明,找出其它可能的边界条件。,三.边界值分析与等价类划分的区别:边界值分析着重于边界的测试,选取等于、刚刚 小于或大于边界的值作为测试数据,等价类划分是选取等价类中的典型值或任意值 作为测试数据。,http:/,167.3.2 边界值分析法(2)方法条件测试值范围测试用例,17,7.4 测试策略(1),前面介绍的每一种设计测试方案的方法各有所长,用一种方法设计出的测试方案可能容易发现某些类型的错误,对另外一些类型的错误可能不易发现。 因此对软件系统进行实际测试时,
18、应综合使用各种方法,形成一个综合策略。通常做法是黑盒法(边沿值分析、等价划分和错误推测法等)设计基本的测试方案,再用白盒法补充一些必要的测试方案。 具体讲,可以使用下述策略: 1.在任何情况下都应使用边界值分析的方法。 2.必要时用等价类划分法补充测试方案。 3.必要时再用错误推测法补充测试方案。 4.对照程序逻辑,检查已设计出的测试方案。 5.根据对程序可靠性的要求采用不同的逻辑覆盖标准,再补充一 些测试方案。,http:/,177.4 测试策略(1) 前面介绍的每一种设计测试方案的,18,7.4 测试策略(2),例.一程序读入三个整数值,表示同一个三角形三条边的长度,该程序根据这三个值判断
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学 软件 测试 课件
链接地址:https://www.31ppt.com/p-1747857.html