黑盒测试及其测试实例
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(1)有效等价类
是指对于程序的规格说明来说,是合理的
有意义的输入数据构成的集合。利用它可以检
验程序是否实现预先规定的功能和性能。
(2)无效等价类
是指对于程序的规格说明来说,是不合理 的、无意义的输入数据构成的集合。程序员主 要利用这一类测试用例来检查程序中功能和性
能的实现是否不符合规格说明要求。
测试的方法与技术
人工测试方法 静态测 试方法 软件测试的 策略和方法 动态测 试方法 计算机辅助静 态分析方法 白盒测试方法
黑盒测试方法
黑盒测试方法是在程序接口上进行测试,主要是为了 发现以下错误:
是否有不正确或遗漏了的功能? 在接口上,输入能否正确地接受? 能否输出正确 的结果? 是否有数据结构错误或外部信息(例如数据文件) 访问错误? 性能上是否能够满足要求? 是否有初始化或终止性错误?
Windows计算器程序实例分析 (1)你测试了1+1,1+2,1+3和1+4之后,还有必要 测试1+5和1+6吗?你能放心地认为它们正确吗? (2)1+15与 1+99999999999999999999999999999999有什 么区别呢? (3)测试计算器中“菜单”命令中的复制功能(单击 复制命令,在菜单弹出时键入c或者C,或者按Ctrl+c, 这几种方法在设计测试用例时可以缩减为按Ctrl+c组 合键) 注意:在寻找等价类划分时,考虑把软件具有相似输入、 相似输出、相似操作的分在一组,这些组就是等价划分。
常见等价类划分测试形式
针对是否对无效数据进行测试,可以将等价类测 试分为 标准等价类测试和健壮等价类测试。 标准等价类测试——不考虑无效数据值,测试用 例使用每个等价类中的一个值。 健壮等价类测试——主要的出发点是考虑了无效 等价类。对有效输入,测试用例从每个有效等价 类中取一个值; 对无效输入,一个测试用例有一 个无效值,其他值均取有效值。
有效等价类(合理等价类)
无效等价类(不合理等价类)
划分等价类的规则 (5个)
(1)如果输入条件规定了取值范围,可定义一个有效等价 类和两个无效等价类。 例1.1: 输入值是学生成绩,范围是0~100。
0
100 有效 等价类 0≤成绩≤100 无效等价类
无效等价类
成绩<0
成绩>100
(2) 如果输入条件规定了输入值的集合,或者是规定 了“必须如何”的条件,这时可确立一个有效等价 类和一个无效等价类。
例1.2:输入条件要求:x==5, 答案: 有效等价类:1个x==5 无效等价类:1个:x!=5
(3)在输入条件是一个布尔量的情况下,可确定一个有效 等价类和一个无效等价类。
例1.3:输入条件要求:x==ture, 答案: 有效等价类:1个x==ture 无效等价类:1个:x==false
(4) 在规定了输入数据的一组值(假定n个,or关系) ,并且程 序要对每一个输入值分别进行处理的情况下,可确立n个 有效等价类和一无效等价类(and关系)。
(5)在规定了输入数据必须遵守的规则的情况下(and关 系),可确立一个有效等价类(符合规则)和若干个无效等 价类(从不同角度违反规则,or关系)。
例1.5:要求输入必须满足年龄>18岁,性别=男,地区=河 南的人。 答案: 有效等价类:1个:年龄>18岁and性别=男and地区=河南 无效等价类:3个:年龄<=18岁,or 性别!=男,or地区! =河南
采用等价分类法要注意以下两点:
划分等价类不仅要要考虑代表“有效”输入值 的有效等价类,还需考虑代表“无效”输入值的无 效等价类。 每一无效等价类至少要用一个测试用例,不 然就可能漏掉某一类错误,但允许若干有效等价 类合用同一个测试用例,以便进一步减少测试的 次数。
如何划分等价类?
根据等价类创建测试用例的步骤
建立等价类表,列出所有划分出的等价类:
输入条件 … 有效等价类 … 无效等价类 …
…
…
…
从划分出的等价类中按以下原则设计测试用例:
(1)为每一个等价类规定一个唯一编号; (2)设计一个新的测试用例,使其尽可能多地覆盖尚未被 覆盖的有效等价类,重复这一步,直到所有的有效 等价类都被覆盖为止; (3)设计一个新的测试用例,使其仅覆盖一个尚未被覆盖 的无效等价类,重复这一步,直到所有的无效等价 类都被覆盖为止。
百度文库
使用等价类划分法测试的实例
例1 三角形问题 分析:
在多数情况下,是从输入域划分等价类的,但并非不能从被测程序的输 出域反过来定义等价类,事实上,这对于三角形问题却是最简单的划分 方法。 在三角形问题中,有四种可能的输出:等边三角形、等腰三角形、 一般三角形和非三角形。利用这些信息能够确定下列输出(值域)等价 类。 R1={〈a,b,c〉:边为a,b,c 的等边三角形} R2={〈a,b,c〉:边为a,b,c 的等腰三角形} R3={〈a,b,c〉:边为a,b,c 的一般三角形} R4={〈a,b,c〉:边为a,b,c 不能构成三角形} 标准等价类测试不考虑无效数据值,测试用例使用每个等价类中的一个 值。
动态黑盒测试 —戴上眼罩测试软件
输入
不深入代码细节的测 试方法称为动态黑盒 测试。 软件测试员充当客户 来使用。
软件
输出
这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序 内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查 程序的功能是否符合它的功能说明。
1.等价分类法
所谓等价分类,就是把所有可能的输入数据(有效的和无 效的)划分成若干个等价类(等价类是指某个输入域的子集合 。 在该集合中,各个输入数据对于揭露程序中的错误都是等 价的)。 因此,可以把全部输入数据合理地划分为若干等价 类,在每一个等价类中取一个数据作为测试的输入条件,这 样就可以少量的代表性测试数据,来取得较好的测试结果。
例1.4:输入条件说明学历可为:专科、本科、硕士、博士四种 之一。 答案: 有效等价类:4个:专科、or本科、or硕士、or博士 无效等价类:1个:!专科and!本科and!硕士and!博士
例如,在教师上岗方案中规定对教授、副教授、讲师和助教分 别计算分数,做相应的处理。因此可以确定4个有效等价类为教 授、副教授、讲师和助教,一个无效等价类,它是所有不符合 以上身分的人员的输入值的集合。