一. 边界值
1. 定义
测试经验丰富的前辈们告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查处更多的错误。
2. 应用的范围
常和等价类配合起来使用,即先划分等级类,根据不同的等价类来选取边界进行测试.
3. 步骤
1) 划分等价类
2) 根据等价类, 进行边界值设置
4. 案例
继续同上---http://www.emoney.cn/product/ggzd.html 个股诊断
输入条件 |
有效等价类 |
无效等价类 |
边界值补充 |
|
长度 |
1 六位 |
18 非六位 |
0位/1位/5位/7位/超出编辑框显示的位数 |
|
字符 |
2 纯数学 |
19 数字和字母组合 |
字母范围为a--z,A--Z,(97—112,65--90) |
|
业务 |
5 沪市A股 |
23 沪B股 |
报表第1行/第2行/第n行/第n-1行 |
|
24 深B股 |
报表第1行/第2行/第n行/第n-1行 |
|||
25 中小企业板块 |
报表第1行/第2行/第n行/第n-1行 |
|||
26 创业板 |
报表第1行/第2行/第n行/第n-1行 |
|||
27 股指期货 |
报表第1行/第2行/第n行/第n-1行 |
|||
28 港货 |
报表第1行/第2行/第n行/第n-1行 |
|||
29 上证封闭\开发式基金 |
报表第1行/第2行/第n行/第n-1行 |
|||
30 上证ETF基金 |
报表第1行/第2行/第n行/第n-1行 |
|||
31 深证封闭\开发式基金 |
报表第1行/第2行/第n行/第n-1行 |
|||
32 深证ETF基金 |
报表第1行/第2行/第n行/第n-1行 |
|||
33 上证债券 |
报表第1行/第2行/第n行/第n-1行 |
|||
34 深证债券 |
报表第1行/第2行/第n行/第n-1行 |
|||
35 可转债券 |
报表第1行/第2行/第n行/第n-1行 |
|||
36 沪市指数 |
报表第1行/第2行/第n行/第n-1行 |
|||
37 深市指数 |
报表第1行/第2行/第n行/第n-1行 |
|||
股票状态 |
7 暂停上市的股票 |
38 终止上市的股票 |
报表第1行/第2行/第n行/第n-1行 |
|
8 涨停的股票 |
||||
9 跌停的股票 |
||||
10 新上市的股票 N |
||||
11 当天除权的股票 XD |
||||
12 当天出息的股票 DR |
||||
13 股指分置改革不明确的股票 S |
||||
14 特别处理的股票 ST |
||||
15 退市风险警示 *ST |
||||
16 特别处理股票 S*ST |
||||
17 特别处理股票 SST |
||||
39 正常的股票 |
备注:
n : 表示当前报表的总行数.
5. 总结
- 边界值分析方法的原则:
1) 如果输入(输出)条件规定了取值范围,则应该以该范围的边界值及边界附近的值作为测试数据;
2) 如果输入(输出)条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据;
3) 如果程序规格说明书中提到的输入或输出是一个有序的集合,应该注意选取有序集合的第一个和最后一个元素作为测试数据;
4) 如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试数据。
5) 边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。
- 常见的边界值:
1) 对16-bit 的整数而言 32767 和 -32768 是边界
2) 屏幕上光标在最左上、最右下位置
3) 报表的第一行和最后一行
4) 数组元素的第一个和最后一个
5) 循环的第 0 次、第 1 次和倒数第 2 次、最后一次