边界值分析法(Boundary Value Analysis,BVA)的测试用例来自于等价类的边界,是等价类划分法的补充。根据边界值划分法,等价类分析法中的测试数据不是选取等价类中的典型值或任意值,而是应当选取正好等于、刚刚大于、刚刚小于边界的值作为测试数据。 使用边界值分析法设计测试用例,首先应该确定它的边界。
上点、离点、内点的确定
- 上点:边界上的点,区间的终点值。
- 离点:离上点最近的点称为离点。开区间的离点,就是开区间中 上点 内侧紧邻的点。闭区间的离点,就是闭区间中 上点 外侧紧邻的点。
- 内点:上点之间(域范围内)的任意一点。
结合等价类划分的具体情况,针对边界值中的【离点】,有以下三种情况:
1.闭区间(闭区间边界两个值包括在内,如 [a,b])
离点(外点):紧邻上点范围之外的第一对点,如下图所示:
2.开区间(开区间边界的两个值不包括在内,如(a,b))
离点(外点):上点内部范围内紧邻的一对点,如下图所示。
3.半开半闭区间(闭区间一边的值包括在内,开区间一边的值不包括在内,如(a,b])
边界值划分法应用步骤
第 1 步:根据等价类划分有效及无效等价类,确定上点、离点及内点,每个点统一编号。
第 2 步:设计一个新的测试用例,使其尽可能覆盖所有尚未覆盖的有效等价类,直到所有有效等价类完全覆盖。
第 3 步:设计一个新的测试用例,使其仅覆盖一个无效等价类,直到所有无效等价类完全覆盖。
边界值划分法案例
如有一个用户名输入框,取值范围是:用户名在 6-18 位之间。那么:
- 上点:区间的端点值,6、18
- 内点:边界上有效范围内的任意一点,10
- 离点:离上点最近的点,根据上述情况也分为3种,如下: