边界值分析法也是黑盒测试方法之一,强调测试边界条件,而非等量类划分。其过程是确定输入值的最大值和最小值,然后将测试点置于这些极端值以及它们之间。使用边界值分析法可以揭示程序在处于边界条件时的bug,并能够更有效地完成测试工作。以下是该方法的具体步骤:
1. 确定边界:识别需求中的限制条件,如输入值或变量的最大值和最小值。例如,一个接受年龄作为输入的程序,最小年龄为18岁,最大年龄为65岁。
2. 确定边界测试点:选择在边界之上和之下测试的输入值。例如,对于上面的年龄限制条件,可以考虑测试18岁和19岁、 64岁和65岁,以测试程序在极端边界输入时的表现。
3. 选择常规测试点:选择常规被认为是有效的测试数据作为测试点。例如,在上述案例中,为了保证测试的有效性,除边界测试点之外还应选择介于18岁和65岁之间的测试点。
4. 测试边界之间的输入:除了测试边界之上和之下的输入外,还应该测试边界之间的数据。例如,在上面的案例中,还应该测试20岁到63岁之间的年龄。
5. 测试无效输出:测试无效的输入。例如,在上面的案例中,测试小于18岁和大于65岁的年龄值,以确保程序在接收无效输入时的表现。
在进行边界值分析时,应优先考虑测试最接近边界的值,以确保输入偏向极端情况时模块仍能正常工作。以下是该方法的一些实例:
1. 数字输入:测试可接受的最小值和最大值以及边界之间的有效和无效输入数据。例如,十进制数在0和256之间的程序应该被测试5、6、255、256、-1和257等十进制数输入。
2. 日期输入:应该测试界限时间,如开始和结束时间,以及首尾次输入。文件输入:测试存在最大限制的文件和没有文件存在之间的输入。
3. 文件输入:测试存在最大限制的文件和没有文件存在之间的输入。
4. 账户余额:测试账户中的最小金额,最大金额和各种情况下的余额变化。
5. 字符串长度:测试最小和最大长度及边界之间的输入。例如,输入密码时应测试最小和最大字符长度,以及一些边界情况,如使用非法字符和特殊字符。
总之,使用边界值分析法可以极大程度上提高黑盒测试的效率。可以在边界上和边界内的输入值之间选择测试数据。用边界值测试可以解决利用其他测试方法无法找到的问题,并发现容易忽略的边际问题。