第一部分 软件测试基础
第 4 章 黑盒测试技术
本章要点:
● 了解等价类技术、边界值技术、因果图技术、业务流程图技术。
● 理解并掌握综合案例分析。
1. 等价类技术(Equivalence Class Testing)
等价类:是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。
分类:有效等价类:符合《需求规格说明书》,合理的输入数据集合。
无效等价类:不符合《需求规格说明书》,无意义的输入数据集合。
等价类划分的步骤:
① 先考虑输入数据的数据类型(合法类型和非法类型)
② 再考虑数据范围(合法类型中的合法区间和非法区间)
③ 画出示意图,区分等价类
④ 为每一个等价类编号
⑤ 从一个等价类中选取一个测试数据构造测试用例
2. 边界值技术(Boundary Value Testing)
大量的测试实践经验表明,边界值是最容易出现问题的地方。
边界值是在划分等价类的过程中产生的,所以通常在从等价类中选取测试数据的时候,经常选取边界值。测试边界值时,一般测试边界值和正好超出边界值一个单位的值。
3. 因果图法(Cause-Effect Graphs)
原因——输入 结果——输出
因果图法比较适合输入条件比较多且关系复杂的情况,不同的条件组合会产生若干动作,测试所有的输入条件的排列组合。
因果图法的本质就是构造所有输入条件的排列组合。
因果图的步骤:
① 找出所有输入条件和输出条件,并编号
② 分析输入条件之间的关系,是互斥还是可以同时满足
③ 画出输入条件的排列组合情况
④ 编写测试用例
4. 流程图法(Workflow Method)
程序流程图是针对程序内部结构的,而黑盒测试的流程图是针对整个系统业务功能流程的。
流程图法一般不是针对某个具体页面或是某个模块的测试,而是将被测系统看作一个整体,从宏观上来分析其业务流程,然后画出流程图来。
流程图法的好处在于能够使测试人员对被测系统有一个总体的把握,防止测试的时候有遗漏的页面或模块。
流程图法的步骤:
① 详细了解需求
② 根据需求说明或界面原型,找出业务流程的各个页面及个页面之间的跳转关系
③ 画出业务流程图(路径图)
④ 写用例,覆盖所有的路径分支
5. 黑盒测试技术的综合运用
首先用流程图法画出被测软件的总体业务流程,然后具体针对某个页面或是模块,应用等价类的思想来划分输入范围(重点测试边界值)。如果涉及多个输入条件的组合情况,再应用因果图法考虑所有情况的排列组合。
案例 计算三角形面积程序
某程序实现如下功能:输入三个整数A、B、C,输出以A、B、C为三遍的三角形面积(1<=A、B、C<100),结果保留2位小数。
请运用等价类和边界值的方法,编写测试用例。
答:
图1 三角形面积程序的等价类划分根据等价类的划分编写如下图所示的测试用例。
图2 三角形面积程序的测试用例
网友评论