黑盒测试
功能测试、数据驱动测试
测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明
步骤
- 测试计划阶段
- 测试设计阶段
- 测试执行阶段
- 测试总结阶段
等价类划分方法
在每一个等价类中选取少量有代表性的数据作为测试的输入条件,就可以用少量代表性的测试数据,并取得较好的测试结果
等价类:输入数据的某个子集,在该子集中的各个输入数据对于揭露程序中的错误都是等效的。
- 关键步骤:确定等价类、选择测试用例
确定等价类
- 在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类
- 在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类
- 在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类
- 在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类
- 在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)
- 在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将等价类进一步的划分为更小的等价类
选择测试用例
测试用例 = [ 测试数据 + 期望结果 ]
- 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类
- 设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类
边界值分析法
边界值分析是等价类测试的补充,主要是考虑等价类的边界条件,在等价类的“边缘”选择元素
长期经验表明:大量的错误是发生在输入或输出范围的边界上
- 如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据
- 如果输入条件规定了值的个数,则用最大个数、最小个数、比最小个数少1,比最大个数多1的数据作为测试数据
- 将原则1和原则2应用于输出条件,即设计测试用例使输出值达到边界值及其左右的值
- 如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例
- 如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例
- 分析规格说明,找出其它可能的边界条件
This post is licensed under CC BY 4.0 by the author.