习题解答1_v2.0
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题解答
第三章黑盒测试及其用例
1、NextDate函数(P28)
请使用等价类划分法为NextDate函数列出输入域等价类表,并设计相应的测试用例。
解答:
NextDate函数包含三个变量month、day和year,函数的输出为输入日期后一天的日期。要求输入变量month、day和year均为整数值,并且满足下列条件:
条件1 1≤month ≤12
条件2 1≤day ≤31
条件3 1912≤year ≤2050
分析程序规格说明中给出和隐含的对输入条件的要求。列出等价类表
*年份:闰年、非闰年(1912≤year ≤2050)
*月份:1-12月
*天数:1、3、5、7、8、10、12(31天),4、6、9、11(30天),2(28或29)
等价类表
2、找零钱最佳组合(P47)
假设商店货品价格(R) 都不大于100元(且为整数),若顾客付款(P)在100元内,现有一个程序能在每位顾客付款后给出找零钱的最佳组合(找给顾客货币张数最少)。假定此商店的货币面值只包括:50元(N50)、10元(N10)、5元(N5)、1元(N1) 四种。
请结合等价类划分法和边界值分析法为上述程序设计出相应的测试用例。
解答:
根据等价类划分法和边界值分析法的基本定义,得到下列基本认识:
Step1.输入:
商品价格R和顾客付款P有以下情况:
R > 100 0 < R < = 100 R <= 0 P > 100 R<= P <= 100 P < R
Step2.输出:
N50 = 1 N50 = 0 4 > N10 >= 1 N10 = 0 N5 = 1 N5 = 0 4 > N1 >= 1 N1 = 0
Step3.分析规格中每一决策点之情形,以RR1, RR2, RR3 表示计算要找50, 10, 5 元货币数时之剩余金额。
R > 100R <= 0 P > 100 P < R RR1 >= 50 RR2 >= 10 RR3 >= 5
Step4. 由上述之输入/ 输出条件组合出可能的情形。
R > 100
R <= 0
0 < R <= 100, P > 100
0 < R <= 100, P < R
0 < R <= 100, R <= P <= 100, RR = 50
0 < R <= 100, R <= P <= 100, RR = 49
0 < R <= 100, R <= P <= 100, RR = 10
0 < R <= 100, R <= P <= 100, RR = 9
0 < R <= 100, R <= P <= 100, RR = 5
0 < R <= 100, R <= P <= 100, RR = 4
0 < R <= 100, R <= P <= 100, RR = 1
0 < R <= 100, R <= P <= 100, RR = 0
Step5.为满足以上之各种情形,测试资料设计如下:
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
3、使用因果图法为三角形问题设计测试用例。(P61)
解答:
Step1.列出原因结果:
因为题划分三角形主要是以边是否相等作为依据的,因此添加三个条件如下:
条件7 a=b 条件8 a=c 条件9 b=c。
为了在画因果图时表达简便清楚,我们分别用C1—C9代表条件1至条件9。
最终的到的输出结果有以下四种,分别用R1,R2,R3,R4代表:
R1:边输入不正确
R2:普通三角形
R3:等腰三角形
R4:等边三角形
中间结果有四个:
I0:边范围正确
I1:可以构成三角形
I2:任意两条边相等
I3:三条边两两相等
Step2.画出因果图,如下:
Step3.将因果图转化成决策表如下:
条件决策
C4:a