面向对象软件的测试

面向对象软件测试的问题

面向对象的三个主要特点:封装、继承和多态。

封装:在面向对象中,封装包含两方面的含义:一是指信息隐蔽,二是指一组相关的变量和方法被封装在同一个类中。测试时需要考虑:1、信息隐蔽对测试知行的影响。2、实例状态与类的测试序列。

继承:是对面向对象中的一个重要机制,它允许子类直接获得父类的属性和方法,从而实现对父类的复用。测试时需要考虑:1、继承对测试充分性的影响。2、误用对测试的影响。

多态:在面向对象软件技术中,多态性是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象。也就是说,在类等级的不同层次中可以共享(公用)一个行为(方法)的名字,然而不同层次中的每个类确各自按自己的需求来实现这个行为。当对象接收到发送给它的消息时,根据该对象所属于的类动态选用在该类中定义的实现算法。指对一个类的引用可以与多个类的实现绑定,绑定分为静态绑定和动态绑定。静态绑定是指在编译时刻就完成的绑定,而动态绑定是指在运行时刻完成的绑定。动态绑定对测试的影响首先体现在测试的充分性上。

继承和多态复合:在面向对象中,继承和多态复合在一起可以产生多种变化。测试时需要考虑:1、抽象类对测试执行的影响。2、误用对测试的影响。

面向对象程序的测试组织问题

  通过执行程序代码完成的测试通常包括单元测试、集成测试和系统测试。

  单元测试的基本要求是被测单元能够被独立地测试。在测试面向对象程序时,由于一个类的各个成员方法通常是相互依赖的,因此很难对一个类中的单个成员方法进行充分的单元测试。面向对象的一个类甚至都不能作为可以被独立测试的单元,主要原因是:1、由于继承的存在,一个类通常依赖于其父类和其他祖先类。2、面向对象程序中经常出现多个类相互依赖,从而导致每个类难以被独立地测试。

  集成测试一般是针对程序的集成结构进行的。在面向对象的程序中,许多集成机制在传统结构化程序中很少见,对于这些机制的测试难以直接应用到传统结构化程序的集成测试中。类似的,对于由多个类组成的继承树的测试,传统的集成测试技术也难以适用。


面向对象软件测试的模型及策略

  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值