软件检验测试试验报告.doc

上传人:scccc 文档编号:12631136 上传时间:2021-12-05 格式:DOC 页数:27 大小:698.50KB
返回 下载 相关 举报
软件检验测试试验报告.doc_第1页
第1页 / 共27页
软件检验测试试验报告.doc_第2页
第2页 / 共27页
软件检验测试试验报告.doc_第3页
第3页 / 共27页
软件检验测试试验报告.doc_第4页
第4页 / 共27页
软件检验测试试验报告.doc_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《软件检验测试试验报告.doc》由会员分享,可在线阅读,更多相关《软件检验测试试验报告.doc(27页珍藏版)》请在三一文库上搜索。

1、学号:软件测试技术实验报告与习题册2014 / 2015 学年 第2学期系别计算机学院专业班级一班姓名指导教师项目成绩批改时间实验一 基于白盒测试的用例设计与验证(一)实验二 基于白盒测试的用例设 计与验证(二)实验三 基于黑盒测试的用例设 计与验证(一)实验四基于黑盒测试的用例设 计与验证(二)实验五JUnit的安装与使用实验六LoadRunner的使用实验七 WinRunner的使用实验一:基于白盒测试的用例设计与验证(一)一. 实验目的(1) 熟悉Eclipse开发环境(2) 掌握Java语言的基本语法,能够利用Java实现简单的程序开发(3) 熟悉白盒测试基本原理(4) 掌握白盒测试的

2、逻辑覆盖法,能够依据语句覆盖、判定覆盖、条件覆盖、 判定 条件覆盖、条件组合覆盖的原理进行相应测试用例的设计工作。二. 实验内容(1) 选择一门语言,完成指定的单元程序开发。#i nclude<stdio.h>void mai n()int m, n,p,q;prin tf("please in put m,n ,p,q:n");sca nf("%d,%d,%d,%d",&m,&n,&p,&q);if(m>0&&n<6)m=n+3;n=n *2;if(P>5|q<0)p=

3、2*q+5;q+;printf("输出的四个数是:d,%d,%d,%dn",m,n,p,q);return ;(2) 分别依据白盒测试逻辑覆盖法中的语句覆盖、判定覆盖、条件覆盖、判定 条件覆盖、条件组合覆盖的原理设计相应的测试用例。(3) 根据给定的流程图,实际运行测试用例,检测程序的实现是否正确。*三. 程序流程图运行结果 语句覆盖:测试用例取值条件具体取值条件m=1, n=2,p=6,q=-1T1,T2,T3,T4m>0, * 6,p>5,q<0m=2,n=3,p=4,q=1T1,T2,F3,F4m>0, * 6,p<5,q>0m=-

4、1, n=7,p=7,q=-2F1,F2,T3,T4m<0, n>6,p>5,q<0m=-2 ,n=4,p=3,q=3F1,F2,F3,F4m<0, * 6,p<5,q>0bilwrfiiifitn:|H4Vn.nj q Ii r a e., -i核岀的EH T軸展仇编.3fiJf ar« x mh yv ba u t»n 丈:Ln li1> JLw w.ww A n F'M It EH> 宀 u = F 臨艺詁帖=I藪总皿h* !*"« - E*V 90 ¥ 4r LF fl=!

5、U-ll >fa A II URF 叭化 tftl0*ie3®4 i!fc -* lb » i®-#!- n n v ftf 1 -it hhi H t *A_l4A-«Inpu v m n>j>« tq =F會札3. i输出白勺1四沖-并是-K = U , 3 Pin*!>aH > *w> h«v v# 0申 Q O ft < In-U-t*判定覆盖:测试用例具体取值条件判定条件输入 输出:m=3,n=2,p=9,q=-3:m=5,n=4,p=-1,q=-2m>0, * 6,p>

6、5,q<0m>0 and n<6 p>5 or q<0输入 输出:m=-4, n=10,p=2,q=4: m=-4, n=10,p=2,q=4m<0, n>6,p<5,q>0m<0 and n>6 p<5 or q>0-1 tSrfl rU r - B -3 Z* GO D0FI I Inus-丄孕Ijnpuie4 _ 1 fi _ 24.姉ifc&ni£!ib 敌羅 + w”*b“me白也爵 -nvc 11廿¥ C O OOf¥ SLfsuc条件覆盖:测试用例取值条件具体取值条

7、件输入 输出m=1, n=7,p=6,q=2 m=1, n=7,p=9,q=3T1,F2,T3,F4m>0, n> 6,p>5,q>0输入 输出m=-3 ,n=4,p=1,q=-1 m=-3, n=4,p=3,q=0F1,T2,F3,T4m<0, * 6,p<5,q<0判定-条件覆盖:测试用例取值条件具体取值条件输入 输出m=1, n=2,p=6,q=-1 m=5,n=4,p=3,q=0T1,T2,T3,T4m>0, n<6,p>5,q<0输入 输出m=-1, n=9,p=4,q=2 m=-1, n=9,p=4,q=2F1,F2

8、,F3,F4m<0, n>6,p<5,q>0条件组合覆盖:测试用例覆盖条件具体取值条件输入 输出m=1, n=2,p=6,q=-1 m=5,n=4,p=3,q=0T1,T2,T3,T4m>0, * 6,p>5,q<0输入 输出m=1, n=7,p=6,q=1 m=1, n=7,p=7,q=2T1,F2,T3,F4m>0, n> 6,p>5,q>0输入 输出m=-1, n=2,p=3,q=-1 m=-1, n=2,p=3,q=0F1,T2,F3,T4m<0, * 6,p<5,q<0输入 输出m=-1, n=7,p

9、=3,q=1 m=-1, n=7,p=3,q=0F1,F2,F3,F4m<0, n> 6,p<5,q>0四. 实验内容中遇到的问题、解决方法和体会。答:遇到的问题:实验过程中,编写程序有点问题,总是输不出结果,不断进行 检查和调试,以至于花费很多时间。解决方法:通过自己检查和调试和向同学寻求帮助得以解决问题,最后运行得到结果。体会:通过这次实验,我知道了只有自己动手去做,才会知道自己还有哪些 不足,才能不断提高自己的实践能力。同时,我还知道了白盒覆盖的几种覆盖方 法以及它们之间的区别。总之,我们要知道理论和实践相结合的重要性,通过不 断实践来提高自己的能力。实验一:基于

10、白盒测试的用例设计与验证一. 实验目的(1) 熟悉二分查找算法,能正确实现程序(2) 掌握白盒测试的基本路径测试法,重点掌握如何根据程序控制流计算程序 的环路复杂度,并且确定程序基本路径。二. 实验内容(1) 选择一门语言,完成二分查找的实现;。源代码:#i nclude<stdio.h>int fin d(i nt *arry,i nt len g,i nt key)in t low=1;int mid;int high=le ng;while(low<=high)mid=(low+high)/2; if(key>arrymid-1) low=mid;else if(

11、key<arrymid-1) high=mid;elsereturn mid;return 0;int mai n()int a10;int i,m, n;for(i=0;i<10;i+) ai=i+1;do printf("请输入查找数(110!):"); sca nf("%d",&m);while(m>10|m<1);n=fin d(a,10,m);printf("查询值为 a%dn",n-1);return 0;(2) 完成相应的程序控制流图,并计算出程序的环路负责度;(3) 确定程序的基本路径,

12、设计相应的测试用例,覆盖确定的基本路径 程序控制流图如下:GIA1BCE4GhHI2/5由程序控制图可知环路复杂度为 5,因此有5条基本路径基本路径1: A-B-A基本路径 2: A-B-C-D-E-A基本路径 3: A-B-C-D-E-F-H-C-D-E-A基本路径 4: A-B-C-D-E-G-I-C-D-E-A基本路径 5: A-B-C-D-E-F-H-C-D-E-G-I-C-D-E-A测试用例图:测试用例预期输出结果输出通过路径M=0Error !基本路径1M=5a4查询值为a4基本路径2M=3a2查询值为a2基本路径3M=7a6查询值为a6基本路径4M=4A3查询值为a3基本路径5运

13、行结果:桔入查找数门竹聊汚BI10T>:5ress any key to cont inue询值为si Mlress any key to cont inuePress any key to continue三. 实验内容中遇到的问题、解决方法和体会。答:遇到的问题:编写的程序有错误不知道该怎么改。解决方法:通过向同学寻求帮助解决,最后运行得到结果。体会:通过这次实验,感觉自己 C语言的基础太差,以后要加强对 C 语言的学习。通过这次实验,我还知道了怎样计算出程序的环路复杂度, 还有如何完成相应的程序控制流图。实验一:基于黑盒测试的用例设计与验证(一)一. 实验目的(1)理解黑盒测试的基

14、本原理;(2)掌握黑盒测试的等价类划分法与边界值分析法,并能够根据相应的方法 设计测试用例。二. 实验内容(1)选择一门语言,完成以下程序:输入三个整数,三角形三条边的长度,输 出三角形所属的类型。#i nclude <stdio.h>double tria ngle(double a, double b, double c)if (a + b > c && b + c > a && a + c > b)return 1;elsereturn 0;double den gbia n( double a, double b, doub

15、le c)if (a = b && b = c)return 1;elsereturn 0;double den gyao(double a, double b, double c)if (a = b | b = c | a = c)return 1;elsereturn 0;double zhijiao(double a, double b, double c)if (a*a + b*b = c*c | b*b + c*c = a*a | a*a + c*c = b*b) return 1;elsereturn 0;void mai n()double a, b, c;pri

16、ntf("请输入三角形三边:");sca nf("%lf", & a);sca nf("%lf", & b);sca nf("%lf", &c);if (triangle(a, b, c)if (de ngbia n(a, b, c)printf("等边三角形n");else if (dengyao(a, b, c) && zhijiao(a, b, c)printf("等腰直角三角形n");else if (de ngyao(a, b

17、, c) printf("等腰三角形n");else if (zhijiao(a, b, c)printf("直角三角形n");elseprintf("一般三角形 n");elseprintf(" 不能构三角形n");(2)依据黑盒测试中的等价类划分法,边界值分析法设计相应的测试用例。等价类划分:编号等价类输入输出1三边为数字字符2 3 4一般三角形2两边之和大于第三边2 3 4一般三角形3两边相等且两边之和大于第三边3 3 4等腰三角形4两边相等且满足a*a+b*b=c*c2*2 +2*2=8等腰直角三角形5能构

18、成三角形且满足a*a+b*b=c*c3*3 +4*4=25直角三角形6能构成三角形且三边相等2 2 2等边三角形7三边中出现了非数字字符a 2 3不能构成三角形8两边之和小于第三边2 3 6不能构成三角形9三边中出现了负数-1 1 3不能构成三角形边界值分析法编号输入边界值测试用例的设计思路1数字字符出现了除数字字符之外的 符号如输入:a 2 3,则不 能构成三角形,反之 成立2边长三边大于0如果输入的数中有小 于0的数,则不能构 成三角形,反之成立3三边边长之和两边之和大于第三边如果两边之和小于第 三边,则不能构成三 角形,反之成立(3)禾U用设计的测试用例测试编写的程序。审芹入三想殛三鱼F

19、iiMEj x *n Jr Jck v '比 口 匸 口n*t J.H uh三. 实验内容中遇到的问题、解决方法和体会。答:遇到的问题:编写代码出现了一点问题,用等价类划分时不知道该怎么划分。解决方法:通过查看书本和向同学寻求帮助解决。体会:通过这次实验,我知道了 黑盒测试的基本原理,掌握了黑盒测试的等 价类划分法与边界值分析法,并能够根据相应的方法设计测试用例。在此次实验 中也遇到了一些问题,不过出现问题才能知道我们的不足之处,然后改正并完善。 所以遇到困难应该想办法解决,大胆尝试,这样才能提高自己的能力。*实验一:基于黑盒测试的用例设计与验证(二)一. 实验目的(1) 理解黑盒测试

20、的基本原理;(2) 掌握黑盒测试的判定表设计方法;(3) 能够根据判定表完成测试用例的生成。二. 实验内容(1)选择一门语言,完成以下程序:输入年月日,输出该日的下一日日期。#i nclude<stdio.h>void mai n()int year,m on th,day,flag=O;m:prin tf("please in put year month day:");sca nf("%d %d %d", &year,&mo nth,&day);if(year%4=0&&year%100!=0)|y

21、ear%400=0)flag=1;/当年份为闰年时,flag为1if(month=2)月份为 2if(day=28&&flag=0)|(day=29&&flag=1)day=1;month+; 如果是平年的第28天或者闰年的第29天,贝U day复位,month力卩一else if(day=29&&flag=0)/平年输入 29 天为错误prin tf("there is not 29th February!' n",year); goto m;else/其他日期,则day加一day+;else if(mo nth=1

22、2)/ 月份为 12if(day=31)如果是输入 31,贝U day 复位,mo nth 复位,year+day=1;mon th=1;year+;else/如果是其他日期,则 day+day+;elseif(mon th=1|m on th=3|m on th=5|m on th=7|m on th=8|m on th=10)月份为 1,3,5,7,8,10if(day=31)如果输入 31,则 day 复位,mon th 加一day=1;mon th+;else/如果是其他日期,则day加一day+;else/月份为 4,6,9,11if(day=30)/ 如果输入 30,则 day 复

23、位,mon th 加一day=1;mon th+;else/如果是其他日期,则day加一day+;prin tf("the n ext day is %4d %4d %4dn",year,mo nth,day);(2)利用黑盒测试中的判定表法确定程序的条件项,条件桩,动作项,动作桩, 完成并优化判定表。条件桩:(1)1<=mo nth<= 121<=day<= 31(3)2月平年28天,闰年29天动作桩:(1)日期加1(2)日期复位(3)月份加1(4)月份复位(5)年份加1(6)不可能条件序号123456789101112131415每月30天111

24、000000000000每月31天,12月除外00000000111000012月0000000000011102月平年0000011-0000000闰年0001100-00000001<二日期 <=27100101001001000日期=30天010000010010100日期=31天001000000100010日期=28天000000100000000日期=29天000010000000000动 作日期加1100101001011100日期复位010010100100010月份加1010010100100000月份复位000000000000010年份加10000000000

25、00010不可能001000010000001(3)根据判定表完成测试用例的设计,并结合编写的程序完成实际的测试工作。*测试用例编号等价类输入输出1每月30天2009 04 302009 5 12每月31天2013 07 312013 8 132月平年28天2001 02 282001 3 142月闰年29天2000 02 292000 3 1512月31天2014 12 312015 1 162月输入30天2000 02 30错误的输入7每月30天时输入312008 06 31错误的输入8月份大于122012 13 25错误的输入9输入中含有非数字字符2011 0a 12错误的输入运行结果:

26、ia?rHwvfc K iMiL Ififerii 丸 Mu1& *n ka y ifc-u c nin In in pn-tT :Mt三. 实验内容中遇到的问题、解决方法和体会。答:遇到的问题:实验中编写代码的时候出现了许多问题, 导致运行的不到结果; 还有写判定表的时候不知道该怎么写,大脑有点混乱,不过最后判定表写出来了, 虽然不知道是否正确。解决方法:代码部分通过调试和向同学求助解决, 最后运行得到正确的结果; 判定表部分通过自己查看书本和不断思考解决。体会:通过这次实验,我知道了判定表并不是像我们想象的那么好写,如果思绪紊乱就可能写不出来;同时我们要不断地锻炼自己,这样才能更好地提高自己 的实践能力。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1