《软件测试实验报告解读(共32页).docx》由会员分享,可在线阅读,更多相关《软件测试实验报告解读(共32页).docx(32页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上本科实验报告课程名称: 软件测试技术 实验项目: 软件测试技术实验 实验地点: 专业班级: 学号: 学生姓名: 指导教师: 谢红薇 2015年 10月16日实验名称 实验1 白盒测试方法实验地点实验室211实验时间2015.10.9一、实验目的和要求(1) 熟练掌握白盒测试方法中的逻辑覆盖和路径测试覆盖方法。(2)通过实验掌握逻辑覆盖测试的测试用例设计,掌握程序流图的绘制。(3)运用所学理论,完成实验研究的基本训练过程二、实验内容和原理实验内容:测试以下程序段void DoWork(int x,int y,int z)1int k=0,j=0;2if(x0)&(z5)
2、8j=x*y+10;9j=j%3;10 说明:程序段中每行开头的数字(1-10)是对每句语句的编号。三、主要仪器设备笔记本计算机四、操作方法与实验步骤画出程序的控制流图(用题中给出的语句编号表示)(1) 分别以语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖和基本路径覆盖法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)(2) 编写完整的C程序(含输入和输出),使用你所设计的测试用例运行上述程序段。完整填写相应的测试用例表说明:(1) 测试用例表中的“覆盖标准”项指:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖和基本路径覆盖。(
3、2) 测试用例表(样表)见表1用例编号输入期望结果覆盖标准覆盖路径实际结果五、实验数据记录和处理1. 真 假X0 T1 F1Z5 T4 F4对于x0&z5真的M 假为/M测试用例:ID:1用例名称:语句覆盖测试项:程序的正确性环境要求:Windows 7和java参考文档:软件规格说明书优先级:高层次:1依赖的测试用例:无步骤:1. 依次输入xyz,值为4,6,12. 路径为期望结果:j=1ID:2用例名称:判定覆盖测试项:程序的正确性环境要求:Windows 7和java参考文档:软件规格说明书优先级:高层次:1依赖的测试用例:无步骤:3. 依次输入xyz,值为4,6,14. 路径为期望结果
4、:j=1判定覆盖:输入 x=4 y=6 z=1 结果 j=1 路径 x=-1 y=1 z=1 j=0 条件覆盖:条件 T1.T2.T3.F4 x=4 y=1 z=10 结果j=2 路径 F1.T2.F3.T4 x=0 y=6 z=1 结果j=1 路径条件/判定覆盖:条件 T1.T2.T3.T4 M N x=4 y=6 z=1结果j=1路径 F1.F2.F3.F4 /M /N x=0 y=0 z=10 j=0 条件组合覆盖:组合:序号条件分支结果序号条件分支结果T1,T2MT1,F2/MF1,T2/MF1,F2/MT3,T4NT3,F4NF3,T4/NF3,F4/N 组合序号输入条件预期结果路径
5、x=4y=6z=1T1,T2,T3,T4J=1x=4y=1z=10T1,F2,T3,F4J=2x=0y=6z=1F1,T2,F3,T4J=1x=0y=0z=10F1,F2,F3,F4J=0路径覆盖:组合序号输入条件预期结果路径x=4y=6z=1T1,T2,T3,T4J=1x=10y=5z=1T1,T2,F3,F4J=1x=0y=6z=10F1,F2,F3,T4J=1x=0y=0z=10F1,F2,F3,F4J=0基本路径覆盖:(3条)输入条件预期结果路径x=10y=5z=1T1,T2,F3,F4J=1x=0y=6z=10F1,F2,F3,T4J=1x=0y=0z=10F1,F2,F3,F4J=
6、0测试用例表用例编号输入期望结果覆盖标准覆盖路径实际结果3x=-1y=1z=1j=0判定覆盖4x=4y=1z=10j=2条件覆盖5x=0y=6z=1j=1条件覆盖6X=4y=6z=1J=1条件/判断覆盖7X=0y=0z=10J=0条件/判断覆盖8x=4y=6z=1J=1条件组合覆盖9x=4y=1z=10J=2条件组合覆盖10x=0y=6z=1J=1条件组合覆盖11x=0y=0z=10J=0条件组合覆盖12x=4y=6z=1J=1路径覆盖13x=10y=5z=1J=1路径覆盖14x=0y=6z=10J=1路径覆盖15x=0y=0z=10J=0路径覆盖16x=10y=5z=1J=1基本路径覆盖17
7、x=0y=6z=10J=1基本路径覆盖18x=0y=0z=10J=0基本路径覆盖程序代码:package 白盒测试;import java.util.Scanner; public class test1 static void DoWork(int x,int y,int z)int k=0;double j=0;if(x0)&(z5)j=x*y+10;j=j%3;System.out.println(j=+j);public static void main(String args)int x,y,z;Scanner sc=new Scanner(System.in);System.out
8、.print(请输入x:);x=sc.nextInt();System.out.print(请输入y:);y=sc.nextInt();System.out.print(请输入z:);z=sc.nextInt();DoWork(x,y,z);六、实验结果分析 实验的预期结果与实际测试结果相同,测试了语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖和基本路径覆盖共七种测试方法方法,其中条件组合覆盖和判定条件覆盖较为覆盖面大。七、心得体会 编写程序代码比较容易简单,设计测试用例的过程比较复杂。但是通过亲自的编写了解了各种覆盖的优缺点,如判定覆盖是针对分支而言,不关注内在条件,条
9、件覆盖则是针对条件而言,不关注外部结果,判定条件覆盖虽然将两者优点结合,但是就覆盖的方面而言,条件组合覆盖比之前的都要强。我个人认为最强的覆盖是路径覆盖+条件组合覆盖,基本上能覆盖所有分支条件,但是用例的数量会呈指数增长,测试起来太麻烦。而基本路径覆盖则是一种新的测试,值得认真学习。实验名称 实验2 黑盒测试方法实验地点实验室211实验时间2015.10.9一、实验目的和要求(1)熟练掌握黑盒测试方法中的等价类测试方法和边界值测试方法。(2)通过实验掌握如何应用黑盒测试方法设计测试用例。(3)运用所学理论,完成实验研究的基本训练过程。二、实验内容和原理1. 用你熟悉的方法编写一个判断三角形问题
10、的程序。要求:输入代表三角形边长的三个证书,判断它们能否组成三角形。如果能够,则输出三角形是等边、等腰或一般三角形的识别信息;如果不能构成三角形,则输出相应提示信息。2使用等价类方法和边界值方法设计测试用例。三、主要仪器设备笔记本计算机四、操作方法与实验步骤(1) 先用等价类和边界值方法设计测试用例,然后用白盒法进行检验和补充(2) 参考程序流程图和控制流图,编写源程序(3) 使用等价类方法设计测试用例(4) 输入设计好的测试用例,执行源程序,记录输出结果程序流程图 程序流图 等价类划分表输入条件有效等价类无效等价类 测试用例表用例编号测试数据(A,B,C)等价类覆盖情况输出五、实验数据记录和
11、处理测试用例:ID:15用例名称:一边为0测试项:正确判断是否三角形环境要求:Windows 7和java参考文档:软件规格说明书优先级:高层次:1依赖的测试用例:无 实际结果步骤:1.依次输入ABC,值为0,6,12.观察结果期望结果:输出不是三角形。ID:16用例名称:两边为0测试项:正确判断是否三角形环境要求:Windows 7和java参考文档:软件规格说明书优先级:高层次:1 实际结果依赖的测试用例:无步骤:1.依次输入ABC,值为0,0,12.观察结果期望结果:输出不是三角形。 等价类划分表输入条件有效等价类无效等价类是否构成三角形1.两边之和大于第三边2.两边之和小于第三边3.两
12、边之和等于第三边4.一边不是整数5.两边不是整数6.三边不是整数7.一边是负数8.两边是负数9.三边是负数10.三边为零是否等腰三角形11.两边相等且三边不都相等12.任意两边不等是否等边三角形13.三边相等14.三边不都相等 测试用例表用例编号测试数据(A,B,C)等价类覆盖情况输出1A=5B=1C=222A=3B=2C=133A=1.1B=3C=444A=1.1B=1.2C=155A=1.1B=1.2C=1.366A=-1B=3C=577A=-1B=-3C=588A=-3B=-4C=-599A=0B=0C=01010A=6B=6C=51,1111A=6B=5C=41,1212A=6B=6C
13、=61,1313A=6B=5C=41,14程序代码:package 黑盒测试;import java.util.Scanner;public class Test2 public static void main(String args)int a,b,c;Scanner sc=new Scanner(System.in);System.out.print(请输入A:);a=sc.nextInt();System.out.print(请输入B:);b=sc.nextInt();System.out.print(请输入C:);c=sc.nextInt();if(ab+c)if(ba+c)if(c
14、a+b)if(a=b)if(b=c)System.out.print(是等边三角形);elseSystem.out.print(是等腰三角形);else if(a=c)System.out.print(是等腰三角形);else if(b=c)System.out.print(是等腰三角形);else System.out.print(是不等边三角形);elseSystem.out.print(不是三角形);elseSystem.out.print(不是三角形);elseSystem.out.print(不是三角形);六、实验结果与分析 输入边长有0或者有负数时,程序都能正确的给出结果,但是输入
15、非整数时,会由于在编写代码时问题而出错。设置的变量值为整型变量,当输入其他类型的值时,程序就会出错。虽然实验内容要求的读入三个整数,但是我觉得也应该设置能读入小数,只需将变量值改为double即可。七、心得体会 设计黑盒测试是从外部入手,从思考角度讲不如白盒来的规律,但是要比白盒测试更加的直观,从期望结果来编写测试用例,同时结合了程序流程图则可以更好地设计测试用例。实验名称 实验三QTP自动化测试实验地点实验室211实验时间2015.10.12一、实验目的和要求(1)实验要求自带笔记本,安装QTP软件,独立完成实验内容,可以互相讨论。(2)实验目的了解QTP软件,熟悉QTP自动化测试原理;掌握
16、QTP软件的脚本录制;掌握QTP检查点的插入,能够利用QTP软件进行功能测试(界面测试)和回归测试。二、实验内容和原理(1)实验原理QTP是mercuryInteractive公司开发一款自动化测试软件,该公司于2006年11月被HP公司收购。QTP自动化测试主要侧重于功能测试(界面测试)和回归测试。(2)实验内容本实验以QTP9.2版本为例,对QTP自带实例FlightResevation(飞机订票系统)进行脚本录制,然后插入检查点进行测试,最后分析和讨论实验结果。三、主要仪器设备笔记本电脑、QTP9.2四、操作方法与实验步骤1. 运行软件,导入系统自带飞机订票系统,输入用户名ssss和密码
17、mercury2. 登陆成功,开始订票操作3. 订票完成,关闭系统,停止录制,保存,回放。回放成功4. 为insert order插入检查点5. 插入后再次回放脚本,显示回放成功6. 将上面constant一栏中输入一个常数值9,再次运行,结果失败。7. 重新录制脚本,将机票的订单传真出去。8. 关闭系统,停止录制,回放,显示失败9. 通过修改Fax Order No的Object Properties中的text的value值的10. 再次回放,显示成功11. 参照以上实验,再添加一个验证“Login”界面中的“AgentName”的检查点。(1) 右下角右键AgentName的输入框,添加
18、其正则表达式。(2) 设计能够通过校验的正则表达式w4,10$,并回放成功。(3) 设计不能通过校验的正则表达式w1,3$并回放失败如下。五、实验数据记录和处理右下角右键AgentName的输入框,添加其正则表达式。设计能够通过校验的正则表达式w4,10$,并回放成功。设计不能通过校验的正则表达式w1,3$并回放失败如下。六、实验结果与分析1.第一个检查点的添加中最后传真订单回放失败原因分析: 提交订单并发送传真的时候,该系统会自动生成一个订单号,而进行回放的时候又会生成另一个订单号,这时因为和之前录制时的订单号不匹配而回放失败。修改:停止回放之后右键列表中的Fax Order No.xx的O
19、bject Properties,在弹出的窗口中点击text的value值中的图标“”,弹出的对话框中把constant中的值改成Fax Order No.0-9+,然后保存关闭。原因:因为之前录制与回放订单号不一致,所以将传真时的订单号改成一个正则表达式0-9+,只要订单号是数字就能通过,这样就可以正常的进行回放了。2.添加第二个验证“Login”界面中的“AgentName”的检查点中:设计能够通过校验的正则表达式w4,10$;设计不能通过校验的正则表达式w1,3$。七、心得体会 之前从未接触过自动化的测试软件,尤其还是英文版本的,安装时也费了很大的劲。后来通过看书和指导书,学到了不少内容
20、,终于可以按照要求对其进行测试和检查,加深了自己对软件测试的理解,有助于以后的学习。专心-专注-专业 读书的好处1、行万里路,读万卷书。2、书山有路勤为径,学海无涯苦作舟。3、读书破万卷,下笔如有神。4、我所学到的任何有价值的知识都是由自学中得来的。达尔文5、少壮不努力,老大徒悲伤。6、黑发不知勤学早,白首方悔读书迟。颜真卿7、宝剑锋从磨砺出,梅花香自苦寒来。8、读书要三到:心到、眼到、口到9、玉不琢、不成器,人不学、不知义。10、一日无书,百事荒废。陈寿11、书是人类进步的阶梯。12、一日不读口生,一日不写手生。13、我扑在书上,就像饥饿的人扑在面包上。高尔基14、书到用时方恨少、事非经过不知难。陆游15、读一本好书,就如同和一个高尚的人在交谈歌德16、读一切好书,就是和许多高尚的人谈话。笛卡儿17、学习永远不晚。高尔基18、少而好学,如日出之阳;壮而好学,如日中之光;志而好学,如炳烛之光。刘向19、学而不思则惘,思而不学则殆。孔子20、读书给人以快乐、给人以光彩、给人以才干。培根