黑盒测试作业参考答案.
黑盒测试参考答案第三章(注意:答案仅供参考,若有误,请自行修改。
) 1、某保险公司计算保险费率。
,点以上保险费率为0.6%计算方式为10点及10;而点数又是由投保0.1%点以下保险费率为10人的年龄、性别、婚姻状况和抚养人数来决定,年龄有效输入范围其中,具体规则如下表所示。
之间的1-9为1-100;抚养人数可输入“无”或整数。
使用等价类划分进行测试用例设计抚养人性婚年未 M F 已20~39 40~59 0.人最多参考答案:
(1)通过对程序功能的分析,其等价类表
如下所示:输入条有效等价类无效等价类件 20~39岁(1)小于1岁 40~59岁(11)年龄(2)于100岁大或岁1~19(12)岁60~100 (3).
M' (4)除‘M'和‘F'之‘性别‘F 外的其他字符(13)'(5)
(外除已婚和未婚之6)已婚婚姻未婚(7的其他字符(14))的外字除无和数之(8)无15)其他字符抚养人(9) 1~6人((数16)1 小于
16~19大
)设计测试用例表,覆盖等价类。
(输入数覆盖预期输保险费等价性0.6%1 4 6 8127M0.6%2 5 7 92F2503 4 6
100.13770M提示“年龄11 4 6 8已4 M 无 0
在之间”1~100婚提示“年龄应未12 5 7 9 5 4 F 102 1~100 婚之间”在提示“性别应已1 13 6 8 30
6 无T
”F或M输入婚
1 4 14 8 提示“婚姻应离无为30 M 已婚或未7 婚婚”
1 4 6 15提示“抚养M
830之间的1-数提示“抚养1 4 6 16 -1
930M
1-之间的数
1 4 6 17提示“抚养20
1030M
1-之间的数
2、NextDate函数。
该函数要求输入三个变量month、day和year,输出该日期之后一天的日期。
其中year的
取值范围为:1900-2079。
如果输入的日期
组合不合法,则显示“无效的输入日期”。
使用等价类划分进行测试用例设计。
参考答案:
其等价类表如下)通过对程序功能的分析,(1 所示:无效等价类输入条有效等价类
件 Month<1
(11montMonthMonth>1212(1(12day< 131(13daDay(2day>31(14year<1900 190yea(15yearyear>2079(3207(16)
设计测试用例表,覆盖等价类。
)(输入数覆盖的预期输价yearmonthday
2008-6-21206120081 2 3
超出11 2 3mont2008-1220超出12 2 3 month2008
20 14 3 围-1 超出范围6 4 2008 1 13 3 day32 day5 6 2008 超出范围1 14 3
1 2 15
1800 20 超出范围year6
6
7 6 20 2080 1 2 16 year超出范围3、P62,习题7。
参考答案略。
4、某软件的一个模块的需求规格说明书中描述:
(1)年薪制员工:严重过失,扣年终风险金的4%;过失,扣年终风险金的2%。
(2)非年薪制员工:严重过失,扣当月薪资的8%;过失,扣当月薪资的4%。
请绘制出因果图和判定表,并给出相应的测试用例。
参考答案:
(1)根据程序的规格说明,原因和结果如下:
原因:C1:年薪制员工。
(1:是年薪制员工;0:非年薪制员工)
C2:严重过失
C3:过失
结果:e1:扣年终风险金的4%
e2:扣年终风险金的2%
e3:扣当月薪资的8%
e4:扣当月薪资的4%
(2)因果图:略
决策表:)3(.
8
7 4 5 6 1 2 3 规则
选:年薪C00111100员:严重
C0110011001101010C:过
扣年终e4%险金扣年终e2%险金e扣当月8%
资扣当月e4%资的√√不操作
√√不可能用例表:)4(预期输出用输入数据例
年薪制员工,严重过扣年终风险金的TC1 失 4%
扣年终风险金的TC2 年薪制员工,过失
2%
非年薪制员工,严TC3
扣当月薪资8%
过
TC4非年薪制员工,过扣当月薪资4%
5、有一个处理单价为1元5角钱的盒装饮料的自动售货机软件,若投入1元5角硬币,
按下“可乐”、“雪碧”或“橙汁”按钮,相应的饮料就送出来。
若投入的是2元硬币,在送出相应的饮料同时退换5角硬币。
请绘制出因果图和判定表,并给出相应的测试用例。
参考答案:
(1)根据程序的规格说明,原因和结果如下:
原因:
C1——投入1元5角硬币
C2——投入2元硬币
C3——按下可乐按钮
C4——按下雪碧按钮
——按下橙汁按钮C5.
结果:角硬币——退还5E1 ——送出可乐饮料E2
——送出雪碧饮料E3 ——送出橙汁饮料E4 中间结点: 11——已投币 12——已按钮 2)因果图:(
)判定表:(3
选项 1-8 9-16 17 18 19 20 21 22 23 24
规则
1
1 1 1 1 1 1 1 1
C1 条.
0 0 0 0 0 件 C2 0 1 0 0
1 1 1 0 0 1 C3 —— 0 0
1 1 1 0 0 ——0 0 1 C4
10101010C5E1
E2
E3E4
能
32
31302928272625规00000C1000
111C211111 条1 0 0 C3 0 0 1 1 1 件1 0 C4 1 1 0 0 1 0
1 C5 0 1 0 0 1 0 1
E1 √√结果√√ E2
E3
√√ E4
不可√√√√√
能
(4)测试用例表。
略
6、P62,习题10。
参考答案略。
6、PriorDate函数。
该函数要求输入三个变量month、day和year,输出该日期之前一
天的日期。
使用判定表法进行测试用例设计。
参考答案:
(1)根据函数的功能,划分以下等价类集合。
月: M1:={month | month=4,6,9,11月(30天)}
M2:={month | month=5,7,8,10,12月(31天)}
M3:={month | month=3月(31天)}
M4:={month | month=2月 }
M5:={month | month=1月(31天)}
日: D1:={Day | day=1} D2:={Day
| day=2-28}
={Day :={Day | day=29} D4D3:| day=30}
={Day | day=31}
:D5
:} Y2:={year | year是闰年年:Y1}
不是闰年={year | year )根据以上等价类集合,建立的判定表为:(12
345
678
91315
012
4
M5
M4M3M2M1C1:5
4
4443
32
ont11
D2D4D2C2:D2D2D55a1D41D511323D51D51 -
-
----C3:-----
2
ea12
1
作:不可能Day - √√√√√√
1
√√√√ Mont√
h –1
Year 1Day 30 Day31 Mon h=12 Day 29 Day
28
合并后的判定表如下:
12
346713
14 2
15
0 1
MM4 MMMMM1 C1:mon M MMM M2,5 4
4 M31
在th 1 2 ,3 3 4
M5
DD4-DDDDDD D2-D DDD2-D D C2:day
在 1 4 5 1 5 1 1 2 3 3 5 1 - C3:yea- - - - - YYY- Y- 2
1 1 r在 2
动作
Day - 1 Month 1Year
1
Day=30 Day=31 Month12
Day=29
Day=28
(2)测试用例表
略7、网上购物商场测试略。