技术分享 | 黑盒测试方法论—边界值

简介: 技术分享 | 黑盒测试方法论—边界值

边界值分析法是一种很实用的黑盒测试用例方法,它具有很强的发现故障的能力。边界值分析法也是作为对等价类划分法的补充,测试用例来自等价类的边界。

这个方法其实是在测试实践当中发现,Bug 往往出现在定义域或值域的边界上,而不是在其内部。为检测边界附近的处理专门设计测试用例,通常都会取得很好的测试效果。

在用边界值分析法的时候,一般规定了取值范围以及值的个数的场景。

在分析等价类案例,划分等价类的时候,一般都是会有比较特殊的点,叫做极点或者上点。比如 [1,100] 中的上点就是 1 和 100,这两个数值就被称为边界值,也可以叫极值。设计测试用例的时候,可以在等价类的基础上,去重点验证它的边界点的情况。

边界值举例

比如需求中的要求是输入的参数值必须大于等于 0 同时小于 100 的整数。

正确代码可以这样设置判断条件:

# 正确条件 1
num > -1 and num < 100
# 正确条件 2
num >= 0 and num <= 99

但是在实际的代码编写过程中,很有可能因为各种原因,导致判断条件设置错误:

# 错误条件 1
num >= -1 and num <= 101
# 错误条件 2
num > 0 and num < 101
# 错误条件 3
num >= 1 and num <= 100

第一种错误情况是因为多包含了 -1 和 101,第二种错误情况是或者漏掉了 0,而第三种错误情况是漏掉了 0 并且多包含了 100。

因为会有各种错误情况的出现,所以需要选择边界值进行重点测试来避免这些情况。

边界值确定

使用边界值分析法设计用例需要考虑 3 个点的选择。

  • 上点:边界上的点
  • 离点:离上点最近的点。如果输入域是封闭的,则离点在域范围外;如果输入域是开区间,则离点在域的范围内。
  • 内点:在输入域内任意一个点

要选取正好等于、刚好大于或刚好小于边界值作为测试数据,一般来说要把上点、离点和内点都取到。所以选取正好等于、刚好大于或刚好小于边界值作为测试数据。

综上,题目中要选择的点有六个:正好等于边界值的 0、100,刚好小于边界值的 -1、99,刚好大于边界值的 1、101。

边界点划分规则

  1. 如果规定了输入域的取值范围,则选取刚好在范围边界的点,以及刚好超过边界的点,作为测试的输入数据。
  2. 如果规定了输入值的个数,则用最大个数,最小个数,比最小个数少 1,比最大个数多 1 的数作为测试数据。
  3. 如果规定了输入是一个有序的集合,则选取集合的第一个元素和最后一个元素作为测试数据。

实例

问题:计算 1—100 的整数之和(包括 1 和 100)

上面已经用等价类的方法设计出来的测试用例,现在要使用边界值分析法补充用例。

首先分析边界值:1,100(有效等价类),其次是边界值两边的值:0,2,99,101(0 和 101 是无效等价类,2 和 99 是有效等价类)。

把有效等价类中的数值换为边界值,这里有 4 个有效等价类的值要取,分别是 1,2,99,100,那么这四个值两个输入框都需要取到。无效等价类中也要覆盖到 0 和 101 这两个值,同样的两个输入框都需要覆盖。

用例编号 所属等价类 输入框1 输入框2 预期结果
1 有效等价类 1 99 100
2 有效等价类 99 1 100
3 有效等价类 100 2 102
4 有效等价类 2 100 102
5 无效等价类 0 40 给出错误提示
6 无效等价类 40 0 给出错误提示
7 无效等价类 101 2 给出错误提示
8 无效等价类 2 101 给出错误示

边界值总结

用边界值法补充测试用例时,要注意确定边界情况(输入或输出等价类的边界),选取正好等于、刚刚好大于或刚刚好小于边界值作为测试数据以及确定各个值的等价类,明确边界值和等价类区别,即边界值分析不是从某等价类中随便挑一个作为代表,而是这个等价类的每个边界都要作为测试条件。

更多技术文章

相关文章
|
测试技术
软件测试|黑盒测试方法论-判定表
软件测试|黑盒测试方法论-判定表
135 0
软件测试|黑盒测试方法论-判定表
|
测试技术
技术分享 | 黑盒测试方法论-判定表
技术分享 | 黑盒测试方法论-判定表
|
测试技术
技术分享 | 黑盒测试方法论—因果图
技术分享 | 黑盒测试方法论—因果图
|
测试技术 数据安全/隐私保护
技术分享 | 黑盒测试方法论—等价类
等价类划分是一种重要的、常用的黑盒测试方法,不需要考虑程序的内部结构,只需要考虑程序的输入规格。它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。 需要把用户所有可能输入的数据,划分成若干份(若干个子集),然后从每一个子集当中选取少数具有代表性的数据作为测试用例,这种方法被称为——等价类划分法。 在有限的测试资源的情况下,用少量有代表性的数据得到比较好的测试效果。
|
测试技术
技术分享 | 黑盒测试方法论—场景法
场景法就是模拟用户操作软件时的场景,主要用于测试系统的业务流程。 测试不能只关注某个控件的边界值、等价类是否满足要求,也要关注它的主要功能和业务流程是否正确实现,这时就需要使用场景法来完成。
|
测试技术
技术分享 | 黑盒测试方法论—边界值
边界值分析法是一种很实用的黑盒测试用例方法,它具有很强的发现故障的能力。边界值分析法也是作为对等价类划分法的补充,测试用例来自等价类的边界。 这个方法其实是在测试实践当中发现,Bug 往往出现在定义域或值域的边界上,而不是在其内部。为检测边界附近的处理专门设计测试用例,通常都会取得很好的测试效果。 在用边界值分析法的时候,一般规定了取值范围以及值的个数的场景。 在分析等价类案例,划分等价类的时
|
7月前
|
测试技术
软件测试高频面试题“黑盒测试之正交试验法”案例剖析与实践应用
软件测试高频面试题“黑盒测试之正交试验法”案例剖析与实践应用
344 0
|
8月前
|
安全 测试技术
53【软件测试】软件测试有哪些方法?白盒测试有哪些方法?黑盒测试有哪些方法?
| **黑盒测试** | 测试人员不考虑内部代码结构,仅考虑输入和输出的测试方法。|
66 0
|
9月前
|
测试技术 程序员
软件工程——软件测试(黑盒测试、白盒测试、测试分析报告)
经过前面软件测编码阶段,是不是我们就可以把软件发布出去供用户使用了呢?不是的,为了确保软件不会出现不必要的差错,还需要经过重重测试的。