欢迎来到天天文库
浏览记录
ID:31020324
大小:78.00 KB
页数:5页
时间:2019-01-05
《面向对象软件的测试技术与方法(转)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、找错一面向对象软件的测试技术与方法发布时
2、hJ:2007-4-121024作者:未知来源:网络转载面向对彖技术所独冇的多态、继承、封装等新特点,使00程序设计比传统语言程序设计产生错误的可能性增大,使得传统袈件测试屮的重点不再显得那么突出,也便原來测试经验和实践证明的次要方面成为了主要问题。用户便用低质虽的软件,在运行过程中会产生各种各样的问題,可能带來不同程度的严重后果,轻者影响系统的正常工作,亟者造成事故和财产损失。软件测试是保证软件质量的放取要的手段,它使用人工或自动乎段來运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求,弄淸预期结
3、果与实际结果之间的差別。面向对彖技术是-•种全新的软件开发技术,正逐渐代勞被广泛使用的面向过税的开发方法,被看成是解决软件危机的新兴技术。尽管面向对彖技术的基本思想保证了软件应该有更高的质量,但实际情况却并非如此,因为无论采用什么样的編程技术,编程人员的错误都是不可避免的,而且由于面向对象技术开发的软件代码匝用率高,更需要严格测试,以避免错谋的繁衍。一、评审因为OOA、OOD阶段所建立的OOA和OOD模型不能执行,所以在每次迭代之后,一定要进行评审。1.正确性00开发模式为演化(重复迭代)性质,即系统的初期为非形式化表示,以后发展为类的细节模型、类的
4、连接和关联,系统设计和配置,以及对类的设计(通过消息组成对象连接模型)。每一阶段都要进行评审。正确性主要在分析和设计模空表示所使用的符号语法是否正确,语义是否正确(即模盘与真实世界领域堆否-•致),以及类的关联(实例间的联系)是否正确地反映了真实世界対彖间的关联。2.一致性由于演化性质,OOA和OOD模型(包括分析、设计和编码层次,即类、屈性、操作、消息)不仅要正确,而且要一致。一致性可以用模型内各实体间的关联性來判断。二、测试1.单元测试OOP完成以后,就可以进行单元测试了。与传统的单元(模块)不同,00中的单元是类。每个类都封装了属性(数据)和管
5、理这些数据的操作(也被称做方法或服务)。一个类可以包含许多不同的操作,…个特殊的操作可以出现在许*不同的类中。传统的单元测试只能测试一个操作(功能)。而在OO单元测试中,一个操作功能只能作为一■个类的一部分,类中有多个操作(功能),就要进行多个操作的测试。另外,父类中定义的某个操作被许多子类继承。但在实际应用中,不同子类中某个操作在使用时又有细微的不同,所以还必须对每个子类中某个操作进行测试。类的测试可以使用多种方法,如基于故障的测试、随机测试和分割测试等。每一种方法都要检査封装在类中的操作,即设计的测试序列(用例),耍保证相关的操作彼检査。因为类的
6、属性值表示类的状态,由此来确定被检查的错谋退否存在。1.组装测试传统软件的层次模块间存在着控制关系,而00软件没冇层次控制结构。所以传统的白顶向下和口底向上的组装策略在00软件组装测试中就没有意义了。另外,一个类每次组装一个操作(传统软件的增虽法)在00软件组装中是不够的,因为纽成类的各个成分之间存在着直接或间接的交互作用。00软件的组装测试冇两种不同的策略:(1)基于线程测试(thread-based-testing)基于线程的测试就是把合作对应一-个输入或爭件的类集合组装起來,也就是用响应系统的一个输入或一个爭件的请求來组装类的集合。对每个线程都
7、要分别进行组装和测试。(2)基于使用测试(use-based-testing)基丁-使用的测试就是按分层來组装系统,可以先进行独立类的测试。在独立类测试Z后,下一•个类的层次叫从属类。从属类用独立类进行测试。这种从属类层的顺序测试育•到整个系统被构造完成。传统软件使用驱动程序和连接程序作为克换操作,而00软件一般不用。00系统组装时还必须进行类间合作(强调上下级关系)的测试。类的合作测试与单个类测试相似,可用随机应用和分割测试來完成。另外,还可以用基于脚本测试和行为模型导出的测试进行。2.确认测试确认测试绘在系统层进行测试,因此类间的联系细节出现了=
8、与传统软件-样,00软件确认测试也主要集中在用户可见活动和用户可识别的系统输出上,所以OO软件也使用传统软件的黑盒子测试方法。确认测试大冬便用基于脚木(scenarios)的测试,因而使用用例成为确认测试的主要驱动器。三、测试用例设计这种设计目前正处于形成阶段。传统软件测试用例设计是从软件的各个模块的算法细节得出的,而OO软件测试用例则普眼于适当的操作序列,以实现对类的说明。黑盘子测试不仅适用于传统软件,也适用OO软件测试。白盒子测试也用于00软件类的操作定义。但00软件中许多类的操作结构简明,所以有人认为在类层」:测试可能要比传统软件斗■的白盒子测
9、试方便o00测试用例设计包含00概念,在OO度駅屮所讲的力个特性:局域性、封装性、信息隐藏、继7软性和对彖的
此文档下载收益归作者所有