面对对象软件测试技术讨论一、引言 软件测试是伴随着软件的产生而产生的。软件危机的频繁出现促使了软件测试的地位得到了大幅提升。软件测试已经不仅仅是局限于软件开发过程中的一个阶段,它已经开始贯穿于整个软件开发过程,成为软件产品质量控制与质量管理的重要手段之一。 软件测试技术作为软件工程学科的一个分支,是保证软件质量和可靠性的关键,因此它也是软件开发过程中的一个重要环节。它的核心思想是:对于输入域的特定输入,观察软件的执行结果,验证该结果与期望结果是否一致,然后根据结果作相应的和调整。在测试过程中,测试用例的选择决定测试的有效性,这也就直接影响到成本,是软件测试的关键和难点。目前,软件测试技术的进展还不是很成熟,测试人员在选择测试用例时通常根据直觉和经验进行,给测试带来很大的盲目性,最终导致的后果是使软件后期维护的费用在成本中居高不下。科学生成测试用例对提高软件质量不仅重要而且必要。 随着面对对象软件开发技术的广泛应用和软件测试自动化的要求,特别是基于的软件开发技术的逐渐普及,基于模型的软件测试逐渐得到了软件开发人员和软件测试人员的认可和接受。它是一种新兴的测试用例生成技术。有优于以前的测试技术的方面。其中模型以其定义良好、功能强大、普遍适用的优点,为基于模型的测试提供了非常好的契机。二、面对对象特征对软件测试的影响面对对象技术是一个全新的开发模式,具有以下特点: (1)它要综合考虑软件开发过程所有阶段。 (2)在软件开发的整个生存周期中,每个阶段之间是连续的。(3)开发过程分为面对对象分析(00A)、面对对象设计(OOD)、面对对象编程(OOP)、面对对象测试(OOT)四个连续的部分。Coad 和 Yourdon 给面}向对象的概念下了一个定义: 面对对象=对象+类+继承+通信 假如一个软件系统是使用这样 4 个概念设计和实现的,则认为这个软件系统是面对对象的。一个而向对象的程序的每一个组成部分都是对象,计算是通过对象和对象之间的通信来执行的。 面对对象技术的本质是定义了类的抽象,将变量和与作用于它的操作封装到一块。然后用不同的类和方法组合成一个对象系统。面对对象软件将传统软件中的一个过程或一个方法内的复杂性转移到对象之间的交互中。面对对象语言一些本质特征形成了如下的一些新的故障、错误风险。1、 基本功能模块 在面对对象系统中,系统的基本构造单元是封装了数据和方法的类和对象,而不再是一个个能完成特定功能的功能模型。每个对象有自己的生存期,有...