面向对象软件测试用例设计(转)资料_第1页
面向对象软件测试用例设计(转)资料_第2页
面向对象软件测试用例设计(转)资料_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、面向对象软件测试用例设计发布时间: 2010-7-21 17:06    作者: 未知   目前,面向对象软件测试用例设计方法,还处于研究和发展阶段。与传统的软件测试不同的是。面向对象测试更关注于设计适当的操作序列以检查类的状态。设计测试用例有以下几个要点:(1) 应该唯一标识每一个测试案例, 并且与被测试的类明显地建立关联;(2) 陈述测试对象的一组特定状态;(3) 对每一个测试建立一组测试步骤,要思考或确定的问题包括:对被测试对象的一组特定状态,一组消息和操作,考虑当对象测试时可能产生的一组异常,一组外部条件,辅助理解和实现测试的补充信息。类的封装性

2、和继承性给面向对象软件的开发带来了很多好处,但却给测试带来了负面影响。一方面,面向对象测试用例设计的目标是类,类的属性和操作是封装的,而测试需要了解对象的详细状态;同时测试还要检测数据成员是否满足数据封装的要求,基本原则是数据成员是否被外界直接调用,即被数据成员所属的类或子类以外的类调用。另一方继承也给测试用例的设计带来了不少麻烦。继承并没有减少对子类的测试,相反使测试过程更加复杂。如果子类和父类的环境不同,则父类的测试用例对于子类没用,需要为子类设计新的测试用例。一、 设计类测试用例对于面向对象软件,小型测试着重测试单个类和类的封装,即类级别的测试,测试方法有随机测试、划分测试和基于故障的测

3、试等。1类级随机测试随机测试是针对软件在使用过程中随机产生的一系列不同的操作序列设计的测试案例,可以测试不同的类实例生存历史。为了简要地说明这些方法,考虑一个记事本的应用。在这个应用中,类text 有以下操作:open(打开),new(新建),read(读取),write(写入),copy(复制),paste(粘贴),view(查看),save(保存)和close(关闭)。这些操作的每一个都能应用于类text,但是由于这个问题的本质提出了某些约束条件。例如,在其他操作执行之前,必须首先执行open 操作,并且在所有其他操作执行完,最后必须执行close 操作。即使对于这些约束,还存在这些操作的

4、许多不同的排列。text 的一个的最小操作序列open·new·write·save·close另外,有其他很多行为可以出现在这个序列中open·new·write·read| write| copy |pasten ·save·close这样可以随机地生成一系列不同的操作序列作为测试用例,测试类实例的不同生存历史。2. 类级划分测试划分测试方法与传统软件测试采用的等价划分方法类似,减少了测试类所需要的测试用例的数量。首先,用不同的划分方法(包括基于状态的划分方法、基于属性的划分方法、基于功能的划分方法)

5、,把输入和输出分类,然后把划分出来的每个类别设计测试用例。下面分别介绍划分类别的方法:基于状态的划分方法是根据操作改变类状态的能力对操作进行范畴划分。仍以text 类为例,首先将状态操作和非状态操作分开,状态操作包括read 和write,而非状态操作有view,然后分别为它们设计测试用例。测试用例1:open·new·write·read·write·save·close测试用例2:open·new·write·read·write·view·save·close

6、基于属性的划分根据操作使用的属性将操作划分成范畴。对于text 类,以属性save为例。首先根据这个属性将操作划分为3个范畴:使用save的操作;修改save的操作;不使用或修改save的操作,然后为每个范畴设计测试序列。当然对于text 类也可以使用其他属性进行划分。基于功能的划分是根据类操作所执行的一般功能将操作进行划分的。首先将text 类中的操作划分为初始化操作(open,new),写入/读取操作(write,read),保存操作(save)和关闭操作(close),然后分别为每个类别设计测试用例。3. 类级基于故障的测试基于故障的测试与传统的错误测试推测法类似。首先,推测软件中可能有

7、的错误,然后,设计出最可能发现这些错误的测试案例。为了推测出软件中可能存在的错误,应该仔细研究分析模型和设计模型,很大程度上要依靠测试人员的经验。二、 测试类间测试用例从面向对象的集成测试开始,设计测试用例就要考虑类间的协作,通常可以从OOA的类关系模型和类行为模型中导出类间测试用例。类间测试方法有随机测试方法、划分测试方法、基于场景的测试和行为测试。随机测试方法和划分测试方法与类级随机测试、类级划分测试类似,主要看一下基于场景的测试和行为测试。1. 基于场景的测试基于场景的测试关注的是用户做什么,这正是基于故障测试所忽略的,即不正确的规约和子系统间的交互。当与不正确的规约关联发生错误时,软件就可能不做用户所希望的事情,这样软件质量会受影响;当一个子系统的行为所建立的环境使得另一个子系统失败时,子系统间的交互错误就会发生。2. 行为测试行为测试即从动态模型

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论