下图是银行卡应用部分类图,图中属性和操作前“+”和“-”分别表示公有成员和私有成员。银行卡Account有两种类型,借记卡SavingAccount和信用卡CreditAccount 。

(1)借记卡和信用卡都有卡号account Number和余额balance两个属性。借记卡余额是正常余额,信用卡余额是目前未还金额,如果没有未还金额,则为0;有开户set Up、取款withdraw、查询余额get Balance和销户close四个方法。借记卡取钱时,要求取钱金额不能超过余额;而信用卡取钱金额不能超过信用额度,因此需要在子类中实现该方法。
(2)借记卡可以存钱deposit。
(3)信用卡有信用额度creditLimit属性,可以查询信用额度getCreditLimit、修改信用额度updateCreditLimit和还款retumCredit。现拟采用面向对象方法进行测试。
问题:4.1
面向对象单元测试主要对象是什么?
问题:4.2
在继承关系上,若某方法在测试父类时已经测试过,那么在什么情况下在子类中也需要测试?
问题:4.3
要测试方法deposit()时,还需要调用什么方法?给出测试序列。
问题:4.4
方法withdraw在基类Account中定义,但在两个子类中有不同实现。这是面向对象什么机制?这种情况在测试时如何进行?
问题:4.5
给出类SavingAccount最小测试序列。
4.1
是针对程序函数、过程或完成某以特定功能程序块。
4.2
1、继承类成员函数在子类中做了改动
2、成员函数调用了改动过成员函数部分
4.3
getBalance()
先测试getBalance()再测试deposit( )
4.4
多态。
只需要在原有测试分析和基础上增加对测试用例中输入数据类型考虑;先测试基类,然后再分别依据输入数据设计不同测试用例。
4.5
先测试Account类,然后测试SavingAccount类。









