《软件测试实验三.docx》由会员分享,可在线阅读,更多相关《软件测试实验三.docx(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上北 京 林 业 大 学2012学年2013学年第 1 学期 软件测试 实验报告书专 业:信息管理与信息系统 实验题目: 基于OCL和状态图的类测试、OATS类交互测试 实验环境: Windows Server 2003、VC6.0 实验目的掌握基于OCL和状态图的类测试以及OATS类交互测试的方法。实验内容实验1:以下是Student类OCL说明的一部分,请根据每个操作的前置条件和后置条件构造测试用例。要求写明测试用例的构造依据,以及最后得到的测试用例。Studentxh(学号) 0age(年龄)= 16 and age = 16 and age 0Post: sel
2、f.xh = xh and age = agepre答:前置条件中,:age = 16;:age = 16 and age = 16 and age = 16)and age = 16 and not(age = 16)and not(age 0; Post: self.xh = xh and age = agepre后置条件中,:self.xh = xh and age = agepre;Pre:xh 0构造测试用例如下: (xh 0,self.xh = xh and age = agepre) (not(xh 0),Exception)实验2:考察人掷某物件的过程。假设掷出去的距离与人的高
3、度、力量以及物件的重量有关,并且人的力量只有大于物件的重量,人才能拾起物件。假定人用类People描述,包含如下属性:(1) Height:身高,必须大于0.5米;(2) Might:力量;(3) ThingStatus:物件状态,有三种取值:None(无物件)、Pickedup(拾起状态)、LiftedUp(举起状态);(4) ThingWeight:物重,只有ThingStatus取值不是None时才有意义,并且应大于0。可以用以下几个方法描述人的行为:(1) PickUp:拾起物件(需引用Might,执行可能改变ThingStatus、ThingWeight);(2) LiftUp:举起
4、物件(执行可能改变ThingStatus)(3) Throw:掷物件(需引用Might、Height、ThingWeight,执行可能改变ThingStatus)。People类的状态转换图如图1所示。请利用状态转换图法设计类测试用例,要求列出测试序列,并做必要解释说明。图1 People类的状态转换图答:#s1: Initialize Pick Up Lift Up Throw#s2: Initialize Pick Up Lift Up Throw Pick Up实验3:一个面向对象系统包含一个client类(C1)和它的一个子类(C2)。这些client类又与一个server类S1交互,
5、这个server类有一个子类S2。这个server类包括一个方法foo(),它把M1的一个实例做为参数,M1有一个子类M2。图2 client、server、message的交互关系图请使用正交阵列测试法(OATS)测试client与server之间的类交互关系foo,要求列出详细测试步骤,并给出最终的测试用例。答:(1)有三个独立的变量(Factors: client,server,和消息类) ;(2)每个变量可以取2个值(Levels);(3)选择L4(23)正交表变量为3因素,值为2水平。(4)把值映射到正交表中OA before mapping factorsFactor 1Factor 2Factor 3Run 1000Run 2011Run 3101Run 4110(5)把因素和值映射到表中,为剩下的水平数选取值OA after mapping factorsClientServerMTest 1C1S1M1Test 2C1S2M2Test 3C2S1M2Test 4C2S2M1专心-专注-专业