黑盒测试方法实例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
黑盒测试方法实例
黑盒测试方法实例分析
一:三角形问题(等价类划分法)
例:输入三个整数为三角形的三条边的长度值,程序打印输出这个三角形为不等边的,等腰的,或是等边三角形。
分析:
设三边分别为A,B,C,如能构成三角形的三边,须:
●A>O,B>0,C>0,且A+B>C,B+C>A,A+C>B;
●如是等腰三角形,则要判断A=B||A=C;
●如是等边三角形,须判断是否A=B,且B=C,且A=C;
由此可得三角形等价类设计表:
设计测试用例,输入顺序为A,B,C
二:找零钱最佳组合(边界值分析法)
例:假设商店货品价格(R)皆不大于100元(且为整数),若顾客付款在100元内(P),求找给顾客最少货币个(张)数?(货币面值50元(N50),10元(N10),5元(N5),1元(N1)四种);
1:分析输入的情形
R:商店货品价格(R=<100且R为整数)P:顾客付款金额(0<p<100)< p="">
●R > 100 (无效输出)(1)
●R <= 0 (无效输出)(2)
(1)(2)为R的无效输入
●P > 100(多付)(无效输出)(3)
●0 < R < = 100
P < R (少给)(无效输出)(4)
(3)(4)为P的无效输入
●R<= P <= 100 (5)
0 < R < = 100 (6)
(5)(6)同时满足,交易才能进行2:分析输出情形
设PR=P-R(即PR为找给顾客的余额)
●N50 N50 = 1 (PR>=50)(7)
N50 = 0 (PR<50)(8)
●N10 4>=N10>=1 (40>=PR>=10) (9)
N10 = 0 (PR<10) (10)
●N5 N5=1 (11)
N5 = 0 (PR减去个位上钱数能被10整除)(如14-4=10)(12)●N1 4>=N1>=1 (13)
N1 = 0 (PR为5的倍数)(14)
3:由上述输入/输出条件组合出可能的情形。
●R > 100 (1)
●R <= 0 (2)
●0 < R <= 100, P > 100 (3)
●0 < R <= 100, P < R (4)
●0 < R <= 100, R <= P <= 100, RR = 50 (5)(6)(7)
●0 < R <= 100, R <= P <= 100, RR = 49 (5)(6)(8)(9)(11)
●0 < R <= 100, R <= P <= 100, RR = 10 (5)(6)(9)
●0 < R <= 100, R <= P <= 100, RR = 9 (5)(6)(10)(11)(13)
●0 < R <= 100, R <= P <= 100, RR = 5 (5)(6)(11)
●0 < R <= 100, R <= P <= 100, RR = 4 (5)(6)(13)
●0 < R <= 100, R <= P <= 100, RR = 1 (5)(6)(13)
●0 < R <= 100, R <= P <= 100, RR = 0 (5)(6)(14)
4、为满足以上之各种情形,测试资料设计如下:
1). 货品价格 = 101
2). 货品价格 = 0
3). 货品价格 = -1
4). 货品价格 = 100, 付款金额 = 101
5). 货品价格 = 100, 付款金额 = 99
6). 货品价格 = 50, 付款金额 = 100
7). 货品价格 = 51, 付款金额 = 100
8). 货品价格 = 90, 付款金额 = 100
9). 货品价格 = 91, 付款金额 = 100
10). 货品价格 = 95, 付款金额 = 100
11). 货品价格 = 96, 付款金额 = 100
12). 货品价格 = 99, 付款金额 = 100
13). 货品价格 = 100, 付款金额 = 100
三:NextDate问题设计(决策表法实例分析)
例:NextDate (int month, int day, int year)函数规定:输入三个整数:month、day和year,函数的输出为输入日期后一天的日期。
例如,输入为2006年3月7日,则函数的输出为2006年3月8日,year满足1920≤year≤2050。
步骤如下:
1)构造决策表
●M1={月份:30天/月},
M2={月份: 31天/月,12月除外},
M3={月份: 12月},M4={月份: 2月}
●D1={日期:1<=日<=27},
D2={日期:日=28},
D3={日期:日=29} ,
D4={日期:日=30},
D5={日期:日=31}
●Y1={年:闰年},Y2={年:平年}
注:二月:平年28天,闰年29天条件桩:●C1:月份在{M1,M2,M3,M4}中之一
●C2:日期在{D1,D2,D3,D4 ,D5}中之一
●C3:年在{Y1,Y2}中之一
动作桩:
●A1:不可能
●A2:日期增1
●A3:日期复位(置1)
●A4:月份增1
●A5:月份复位(置1)
●A6:年增1
2)由决策表设计测试用例,得测试用例表
四:工资发放问题(因果图)
例:某厂工资发放,分析测试需求,列出输入和输出条件,情况描述如下:
●工资分年薪制a1,月薪制a2;
●错误程度分普通a3,严重a4;
●工资为a1的员工范普通错误时扣工资1%(b1),犯严重错误时扣工资2%(b2);
●工资为a2的员工范普通错误时扣工资2%(b3),犯严重错误时扣工资4%(b4);
其中a1与a2互斥,b1,b2与b3,b4互斥;a3和a4可同时兼备。
分析:(因果图)-转化成->(判定表)-转换成->(测试用例表)
判定表:
可得测试用例表如下:
</p<100)<>。