常见的黑盒测试包括:等价类划分测试、边界值分析、决策表测试以及因果图、特殊值测试和故障猜测法。常用的一般有等价类法、边界值法和因果图法。
等价类划分是把所有可能的程序的输入域划分成若干个不相干的自己,成为等价类。等价类可以按区间划分,可以按数值划分,俺数值集合划分、按限制条件划分和细分等价类。标准的等价类划分测试不考虑无效数据值,健壮等价类划分测试考虑了无效等价类。对有效输入来说,测试用例从每个有效等价类中取一个值。对无效输入来说,一个测试用例有一个无效值,其他值都是有效值。
边界值分析:是一种很有效的黑盒测试方法,它的基本思想是,选取正好等于、刚刚大于或刚刚小于边界的值作为测试数据。一些可能与边界有关的数据类型有:数值、速度、字符、地址、位置、尺寸和数量等。同时,考虑这些数据类型的下述特征:第一个/最后一个,最小值/最大值,开始/完成,超过/在内,空/满,最短/最长,最早/最迟,最慢/最快,相邻/最远等。对于16Bit的整数而言,32767和-32768是边界;屏幕上光标的最右下、最左上是边界;报表的第一行和最后一行是边界;数组元素的第一个和最后一个是边界;循环的第0次,第一次,倒数第二次,最后一次是边界等等。
边界值分析不适合逻辑变量个布尔型变量。
在所有的黑盒测试方法中,基于决策表的测试是最严格、最具有逻辑性的测试。决策表很适合处理针对不同的逻辑条件的组合值,分别执行不同操作的问题。决策表通常由四个部分组成:条件桩,条件项,动作桩和动作项。条件桩分别列出了问题的所有条件。条件项部分针对条件桩给出的条件列出所有可能的取值。动作桩则给出了问题可能采取的操作,这些操作的排列顺序一搬没有什么限制。动作项和条件项紧密结合。指出在条件项的各组组值情况下应采取的动作。我们把任何一个条件组合的特定取值及其相应要执行的操作称为一条规则。在决策表中贯穿条件项和动作项的一列就是一条规则。决策表规模较大,有n个条件的有限项目(每个条件取真、取假)有2^n规则。
因果图:分析程序规格说明中哪些是原因,哪些是结果;分析程序规格说明书中语义的内容,找出原因与结果之间,原因与原因之间的对应关系,即找到逻辑关系;有些不能组合的原因和结果之间会使用一些记号表明约束或限制条件;把因果图转换成决策表;根据决策表中每一个设计测试用例。