实验名称实验一白盒测试方法实验地点实验时间2013-12-13一、实验目的和要求(1)熟练掌握白盒测试方法中的逻辑覆盖和路径测试覆盖方法(2)通过实验掌握逻辑覆盖测试的测试用例设计,掌握程序流图的绘制(3)运用所学理论,完成实验研究的基本训练过程二、实验内容和原理实验内容:测试以下程序段VoidDoWork(intx,inty,intz){intk=0,j=0;if((x0)&&(z10)){k=x*y-1;j=sqrt(k);}if((x==4)||(y5))j=x*y+10;j=j%3;}说明:程序段中每行开头的数字(1-10)是对每句语句的编号三、主要仪器设备笔记本电脑四、操作方法与实验步骤(1)画出程序的控制流程图(用题中给出的语句编号表示)控制流图(2)分别以语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖和基本路径覆盖法设计测试用例,并写出每个测试用例执行路径(用题中给出的语句编号表示)。(3)编写完整的C程序(含输入和输出),使用你所设计的测试用例运行上述程序段。完整填写相应的测试用例表(语句覆盖测试用例表、判定覆盖测试用例表、条件覆盖测试用例表、判定/条件覆盖测试用例表、条件组合覆盖测试用例表、路径覆盖测试用例表、基本路径测试用例表)#includestdio.h#includemath.hmain(){inta,b,c,n;printf(pleaseinput3date:);scanf(%d%d%d,&a,&b,&c);n=DoWork(a,b,c);printf(%d,n);getch();}intDoWork(intx,inty,intz){intk=0,j=0;if((x0)&&(z10)){k=x*y-1;j=sqrt(k);}if((x==4)||(y5))j=x*y+10;j=j%3;returnj;}说明:(1)测试用例表中的“覆盖标准”项指:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖和基本路径覆盖。(2)测试用例表(样表)见表1。表1.测试用例表用例编号输入期望结果覆盖标准覆盖路径实际结果五、实验数据记录和处理语句测试用例表用例编号输入期望结果覆盖标准覆盖路径实际结果1x=4,y=7,z=62语句覆盖1,2,3,4,5,6,7,8,92判定测试用例表用例编号输入期望结果覆盖标准覆盖路径实际结果1x=3,y=8,z=61判定覆盖1,2,3,4,5,6,7,8,912x=-0,y=5,z=90判定覆盖1,2,7,90条件测试用例表用例编号输入期望结果覆盖标准覆盖路径实际结果1x=4,y=4,z=112条件覆盖1,2,7,8,922x=0,y=6,z=71条件覆盖1,2,7,8,91判定/条件测试用例表用例编号输入期望结果覆盖标准覆盖路径实际结果1x=4,y=6,z=91判定/条件覆盖1,2,3,4,5,6,7,8,912x=-1,y=4,z=110判定/条件覆盖1,2,7,90条件组合测试用例表用例编号输入期望结果覆盖标准覆盖路径实际结果1x=4,y=6,z=91条件组1,2,3,4,5,6,7,1合覆盖8,92x=-1,y=6,z=111条件组合覆盖1,2,7,8,913x=4,y=4,z=92条件组合覆盖1,2,7,8,924x=-1,y=4,z=110条件组合覆盖1,2,7,90路径测试用例表用例编号输入期望结果覆盖标准覆盖路径实际结果1x=4,y=6,z=91路径覆盖1,2,3,4,5,6,7,8,912x=-1,y=6,z=111路径覆盖1,2,7,8,913x=3,y=4,z=90路径覆盖1,2,3,4,5,6,7,904x=1,y=4,z=110路径覆盖1,2,7,90基本路径测试用例表用例编号输入期望结果覆盖标准覆盖路径实际结果1x=4,y=6,z=91基本路径覆盖1,2,3,4,5,6,7,8,912x=-1,y=6,z=111基本路径覆盖1,2,7,8,913x=3,y=4,z=90基本路径覆盖1,2,3,4,5,6,7,904x=1,y=4,z=110基本路径覆盖1,2,7,905X=4,x=4,x=92基本路径覆盖1,2,7,8,92六、实验结果与分析实验期望结果与覆盖路径完全符合,该程序段符合要求,达到了预期的要求。七、讨论、心得通过这次试验,我熟悉了:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖和基本路径覆盖这几种白盒测试方法。自己对测试的这几种功能更加的熟悉,感觉特别的棒。实验名称实验二黑盒测试方法实验地点实验时间2013-12-20一、实验目的和要求(1)熟练掌握黑盒测试方法中的等价类测试方法和边界值测试方法(2)通过实验掌握如何应用黑盒测试方法设计测试用例(3)运用所学理论,完成实验研究的基本训练过程二、实验内容和原理1.用你熟悉的语言编写一个判断三角形问题的程序。要求:读入代表三角形边长的三个整数,判断它们能否组成三角形。如果能够,则输出三角形是等边、等腰或一般三角形的识别信息:如何不能构成三角形,则输出相应提示信息2.使用等价类方法和边界值方法设计测试用例。三、主要仪器设备笔记本电脑四、操作方法与实验步骤(1)先用等价类和边界值方法测试用例,然后用白盒法进行检验与补充。(2)判断三角形问题的程序流程图和程序流图如图1和如图2所示。用你熟悉的语言编写源程序(3)使用等价类方法设计测试用例,并填写完成表2和表3(4)输入设计好的测试用例,执行源程序,记录输出结果。图1.程序流程图图2.程序流图表2.等价类划分表输入条件有效等价类无效等价类是否构成三角形1.任意两边和大于第三边且三边均大于02.至少一对两边和小于等于第三边是否等腰三角形3.符合三角形条件且两边长相等4.任意两边长均不相等是否等边三角形5.符合三角形条件且三边长相等6.三边长不相等程序:main(){inta,b,c;printf(pleaseinputabc:);scanf(%d%d%d,&a,&b,&c);if((ab+c)&&(ba+c)&&(ca+b)){if(a==b){if(b==c)printf(thisisadengbiantriangle!\n);elseprintf(thisisadengyaotriangle!\n);}else{if(a==c)printf(thisisadengyaotriangle!\n);else{if(b==c)printf(thisisadengyaotriangle!\n);elseprintf(thisisageneraltriangle!\n);}}}elseprintf(thisisnottriangle!\n);getch();}五、实验数据记录和处理表3.测试用例表用例编号测试数据(A,B,C)等价类覆盖情况输出15,6,71不等边三角形21,4,82不是三角形32,2,13等腰三角形45,6,74不等边三角形56,6,65等边三角形65,6,76不等边三角形六、实验结果与分析与预期的结果一样,这个程序流程通过c语言实现版本,经测试符合预期。七、讨论、心得通过这个实验,我掌握了黑盒测试方法中的等价类测试方法和边界值测试方法,明白了如何应用黑盒测试方法设计测试用例,达到了学以致用的目的。对c语言的编程更加熟练。孰能生巧,感觉还是不错的。实验名称实验三QTP自动化测试实验地点实验时间2013-12-27一、实验目的和要求(1)实验要求自带笔记本,安装QTP软件(V9.2),独立完成实验内容,可以互相讨论(2)实验目的了解QTP软件,熟悉QTP自动化测试原理;掌握QTP软件的脚本录制;掌握QTP检查点的插入,能够利用QTP软件进行功能测试(界面测试)和回归测试。二、实验内容和原理(1)实验原理QuickTestProfessional简称QTP,是MercuryInteractive公司开发一款自动化软件,该公司于2006年11月被HP公司收购。QTP自动化测试软件主要侧重于功能测试(界面测试)和回归测试。(2)实验内容本实验以QTP9.2版本为例,首先对QTP自带实例“FlightResevationg”(飞机订票系统)进行脚本录制,然后插入检查点进行测试,最后分析和讨论实验结果。三、主要仪器设备(1)笔记本电脑(windows系统)(2)QTP9.2四、操作方法与实验步骤1.安装QTP9.2,启动该软件先解压文件,解压后先查看“安装重要说明”文件,根据文件说明进行安装安装成功后需要重新启动电脑,根据安装提示操作即可。安装完成后启动“QuickTestProfessional”,进入软件主界面。2.对FlightResevationg(飞机订票)系统进行脚本录制。(1)启动QTP软件快捷方式,进入QTP工作界面。(2)点击工具栏上的“Record”图标进行脚本录制,如图3所示:图3(3)在弹出的“RecordandRunSettings”对话框中切换至“WindowsApplications”标签,如图4所示:图4(4)在弹出的对话框中选择“Applicationdetails:”中右边的“+”标签,如图5所示:图5(5)在弹出的对话框中按照默认选项选择,然后点击“OK”按钮,如图6所示:图6(6)在弹出的“Login”界面中输入用户名和密码,如图7所示。注意:用户名至少是4个字符,密码是“mercury”图7(7)在弹出的“FlightReservation”窗口中选择订票日期、出发地和目的地,然后选择“Flight”图标选择航班,如图8所示。注意:日期格式“MM-DD-YY”,并且必须是当前日期之后。图8(8)在弹出的“FlightTable”表中选择一趟航班,点击“OK”按钮返回。(9)在“Name”中填写订票人姓名,选择订票数目“Tickets”和仓位“Class”,然后点击“InsertOrder”按钮,生成订单,如图9所示。图9(10)选择工具栏“File”菜单中的“Exit”子菜单或者点击关闭按钮,关闭“FlightReservation”窗口。点击QTP主界面工具栏中的“Stop”按钮,停止脚本录制。至此,订票系统录制完毕,如图10所示:图103.保存录制脚本并对脚本进行回放首先点击工具栏上的保存图标,保存刚才录制的脚本,然后点击“Run”按钮,根据默认选择,对录制的脚本进行回放并生成测试结果表,如图11和图12所示。图11图12在测试结果表中,Result结果为:Done,表明系统运行完成,测试结果是否满足预期?需要加入“检查点”进行验证。4.插入“检查点”验证订单是否生成(1)在“keywordview”视图中单击“InsertOrder”这一行,同时QTP主界面右下角“ActiveScreen”中会显示这一操作的界面,如图13所示。图13(2)在“ActionScreen”视图中“OrderNo”标签对应的文本框中点鼠标右键,在弹出的快捷菜单中选择“InsertStandardCheckpoint”,如图14所示。(3)在弹出的对话框中单击“ok”按钮打开“Checkpointproperties”对话框,在该对话框中只选择“text”属性这一行,然后选择“insertstatement:”中的“Aftercurrentstep”选项单击“Configurevalue”标签中“Constant”类型最右边的图标,如图15所示:图15(4)在弹出的对话框中先选中“Regularexpression”标签,然后在Value中输入值:“[0-9]+”,(“[0-9]+”是一个正则表达式,该表达式的含义是判断是否为数字),最后点击“OK”按钮,如图16所示:图16(5)返回“Checkpointproperties”对话框,单击“OK”按钮,至此,检查点插入成功。(6)保存脚本,重新运行脚本,生成如图17所示的测试结果表。测试结果表明测试通过,订单生成成功。图175.在图15中的“constant”一栏中输入一个常数值,重新运