【软件测试】某银行B和某公司C发行联名信用卡

414 阅读3分钟

2017年真题:

某银行B和某公司C发行联名信用卡

阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。

【说明】

某银行B和某公司C发行联名信用卡,用户使用联名信用卡刷卡可累计积分,积分累计规则与刷卡金额和刷卡日期有关,具体积分规则如表2-1所示。此外,公司C的会员分为普通会员、超级会员和PASS会员三个级别,超级会员和PASS会员在刷卡时有额外积分奖励,奖励规则如表2-2所示。

表2-1 积分规则
刷卡日期
每月9日、19日刷卡金额小数部分四舍五入后的2倍
11月11日刷卡金额小数部分四舍五入后的6倍
12月12日刷卡金额小数部分四舍五入后的4倍
其他日期刷卡金额小数部分四舍五入
表2-2 额外积分奖励规则
会员级别普通会员超级会员PASS会员
级别代码MSP
额外积分奖励0%100%200%

银行B开发了一个程序来计算用户每次刷卡所累积的积分,程序的输入包括会员级别L、刷卡日期D和刷卡金额A,程序的输出为本次积分S。其中,L为单个字母且大小写不敏感,D由程序直接获取系统日期,A为正浮点数最多保留两位小数,S为整数。

【问题1】(5分)

采用等价类划分法对该程序进行测试,等价类表如下表所示,请补充表2-3中空(1)~(5)。

表2-3 等价类
会员级别有效等价类编号无效等价类编号
会员等级LM1非字母9
S2非单个字母10
(1)3(4)11
刷卡日期D每月9日、19日4
11月11日5
(2)6
其他日期7
刷卡金额A(3)8非浮点数12
(5)13
多余2位小数的正浮点数14

(1)答案

(1):P

(2):12月12日

(3): 正浮点数带2位小数

(4): M/S/P之外的单个字母

(5): 非正的浮点数

【问题2】(9分)

根据以上等价类表设计的测试用例如下表所示,请补充表2-4中空(1)~(9)。

编号输入覆盖等价类(编号)预期输出S
LDA
1M1月9日500.251,4,8(1)
2S11月11日(2)2,5,86000
3P12月12日500(3)6000
4P(4)5003,7,81500
5(5)其他日期5009,7,8N/A
6非单个字母其他日期50010,7,8(6)
7(7)其他日期50011,7,8N/A
8M其他日期非浮点数(8)N/A
9M其他日期非正浮点数1,7,13N/A
10M其他日期(9)1,7,14N/A

(2)答案

(1)1000

(2)500.25

(3)3,6,8

(4)其他日期

(5)非字母

(6)N/A

(7)M/S/P之外的单个字母

(8)1,7,12

(9)多余2位小数的正浮点数

【问题3】(6分)

如果规定了单次刷卡的积分上限为20000(即S取值大于等于0小于等于20000),则还需要针对S的取值补充一些测试用例。假设采用等价类划分法和边界值分析法来补充用例,请补充表2-5、表2-6中的空(1)-(6)。

表2-5补充等价类
编号等价类
10<= S <= 20000
2(1)
3(2)
表2-6边界值
编号边界值
1S = 20000
2(3)
3(4)
4S=0
5(5)
6(6)

(3)答案

(1)S<0

(2)S>20000

(3)S = 19999

(4)S = 20001

(5)S = -1

(6)S = 1