软件测试基础5.ppt

软件测试技术基础;第5章 面向对象软件的测试;5.1 概述;5.1 概述;5.1 概述;5.1 概述;5.1 概述;5.1 概述;5.1 概述;面向对象技术的特点给测试带来的新问题具体表现为: (1)封装把数据及对数据的操作封装在一起,限制了对象属性对外的透明性和外界对它的操作权限,在某种程度上避免了对数据的非法操作,有效防止了故障的扩散。但同时,封装机制也给测试数据的生成、测试路径的选取以及测试结构的分析带来了困难。 (2)继承实现了共享父类中定义的数据和操作,同时也可定义新的特征。子类是在新的环境中存在,所以父类的正确性不能保证子类的正确性。继承使代码的重用率得到了提高,但同时也使故障的传播几率增加。 (3)多态和动态绑定增加了系统运行中可能的执行路径,而且给面向对象软件带来了严重的不确定性,给测试覆盖率的活动带来新的困难。 ;1 数据成员是否满足数据封装的要求 数据封装是数据和数据有关的操作的集合。 检查数据成员是否满足数据封装的要求,基本原则是数据成员是否被外界(数据成员所属的类或子类以外的调用)直接调用。 当改变数据成员的结构时,是否影响了类的对外接口,是否会导致相应外界必须改动。 值得注意,有时强制的类型转换会破坏数据的封装特性。;8.2 类测试 ;1. 继承的成员函数是否都不需要测试? 对父类中已经测试过的成员函数,两种情况需要在子类中重新测试:a)继承的成员函数

文档评论(0)

1亿VIP精品文档

相关文档