软件测试实验报告_第1页
软件测试实验报告_第2页
软件测试实验报告_第3页
软件测试实验报告_第4页
软件测试实验报告_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

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

2、白盒测试的逻辑覆盖法,能够依据语句覆盖、判定覆盖、条件覆盖、判定 条件覆盖、条件组合覆盖的原理进行相应测试用例的设计工作。二.实验内容( 1)选择一门语言,完成指定的单元程序开发。#includevoid main()int m,n,p,q;printf(please input m,n,p,q:n);scanf(%d,%d,%d,%d,&m,&n,&p,&q);if(m0&n5|q 0 AND n 5 OR q 0,n5,q0,n6,p0m=-1,n=7,p=7,q=-2F1,F2,T3,T4m6,p5,q0m=-2,n=4,p=3,q=3F1,F2,F3,F4m0,n6,p0.判定覆盖:测

3、试用例具体取值条件判定条件输入: m=3,n=2,p=9,q=-3m0,n5,q0 and n5 or q0输入: m=-4,n=10,p=2,q=4m6,p0m6输出: m=-4,n=10,p=2,q=4p0.条件覆盖:测试用例取值条件具体取值条件输入: m=1,n=7,p=6,q=2T1,F2,T3,F4m0,n6,p5,q0输出: m=1,n=7,p=9,q=3输入: m=-3,n=4,p=1,q=-1F1,T2,F3,T4m0,n6,p5,q0,n5,q0输出: m=5,n=4,p=3,q=0输入: m=-1,n=9,p=4,q=2F1,F2,F3,F4m6,p0输出: m=-1,n=

4、9,p=4,q=2.条件组合覆盖:测试用例覆盖条件具体取值条件输入: m=1,n=2,p=6,q=-1T1,T2,T3,T4m0,n5,q0,n6,p5,q0输出: m=1,n=7,p=7,q=2输入: m=-1,n=2,p=3,q=-1F1,T2,F3,T4m0,n6,p5,q0输出: m=-1,n=2,p=3,q=0输入: m=-1,n=7,p=3,q=1F1,F2,F3,F4m6,p0输出: m=-1,n=7,p=3,q=0.四实验内容中遇到的问题、解决方法和体会。答:遇到的问题:实验过程中,编写程序有点问题,总是输不出结果,不断进行检查和调试,以至于花费很多时间。解决方法:通过自己检查

5、和调试和向同学寻求帮助得以解决问题,最后运行得到结果。体会:通过这次实验, 我知道了只有自己动手去做,才会知道自己还有哪些不足,才能不断提高自己的实践能力。同时,我还知道了白盒覆盖的几种覆盖方法以及它们之间的区别。 总之,我们要知道理论和实践相结合的重要性,通过不断实践来提高自己的能力。.实验一:基于白盒测试的用例设计与验证(二)一.实验目的( 1)熟悉二分查找算法,能正确实现程序( 2)掌握白盒测试的基本路径测试法,重点掌握如何根据程序控制流计算程序的环路复杂度,并且确定程序基本路径。二.实验内容( 1)选择一门语言,完成二分查找的实现;。源代码:#includeint find(int *

6、arry,int leng,int key)int low=1;int mid;int high=leng;while(lowarrymid-1)low=mid;else if(keyarrymid-1)high=mid;elsereturn mid;return 0;int main()int a10;int i,m,n;for(i=0;i10|m1);n=find(a,10,m);printf( 查询值为 a%dn,n-1);return 0;( 2)完成相应的程序控制流图,并计算出程序的环路负责度;( 3)确定程序的基本路径,设计相应的测试用例,覆盖确定的基本路径。程序控制流图如下:.A

7、1BCD3E4FGHI2/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运行结果:.三实验内容中遇到的问题、解决方法

8、和体会。答:遇到的问题:编写的程序有错误不知道该怎么改。解决方法:通过向同学寻求帮助解决,最后运行得到结果。体会:通过这次实验,感觉自己C 语言的基础太差,以后要加强对C语言的学习。通过这次实验,我还知道了怎样计算出程序的环路复杂度,还有如何完成相应的程序控制流图。.实验一:基于黑盒测试的用例设计与验证(一)一.实验目的( 1) 理解黑盒测试的基本原理;( 2) 掌握黑盒测试的等价类划分法与边界值分析法,并能够根据相应的方法设计测试用例。二.实验内容( 1)选择一门语言,完成以下程序:输入三个整数,三角形三条边的长度,输出三角形所属的类型。#include double triangle(do

9、uble a, double b, double c)if (a + b c & b + c a & a + c b)return 1;elsereturn 0;double dengbian(double a, double b, double c)if (a = b & b = c)return 1;elsereturn 0;double dengyao(double a, double b, double c)if (a = b | b = c | a = c)return 1;elsereturn 0;.double zhijiao(double a, double b, double

10、 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 main()double a, b, c;printf( 请输入三角形三边 : );scanf(%lf, &a);scanf(%lf, &b);scanf(%lf, &c);if (triangle(a, b, c)if (dengbian(a, b, c)printf( 等边三角形 n);else if (dengyao(a, b, c) & zhijiao(a, b, c)printf( 等腰直角三角形 n);else

11、if (dengyao(a, b, 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能构成三角形且满足 a*a+b*b=c*c3*3 +

12、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)利用设计的测试用例测试编写的程序。.三实验内容中遇到的问题、解决方法和体会。答:遇到的问题:编写代码出

13、现了一点问题, 用等价类划分时不知道该怎么划分。解决方法:通过查看书本和向同学寻求帮助解决。体会:通过这次实验,我知道了黑盒测试的基本原理,掌握了黑盒测试的等价类划分法与边界值分析法, 并能够根据相应的方法设计测试用例。在此次实验中也遇到了一些问题,不过出现问题才能知道我们的不足之处,然后改正并完善。所以遇到困难应该想办法解决,大胆尝试,这样才能提高自己的能力。.实验一:基于黑盒测试的用例设计与验证(二)一.实验目的( 1) 理解黑盒测试的基本原理;( 2) 掌握黑盒测试的判定表设计方法;( 3) 能够根据判定表完成测试用例的生成。二.实验内容( 1)选择一门语言,完成以下程序:输入年月日,输

14、出该日的下一日日期。#includevoid main()int year,month,day,flag=0;m:printf(please input year month day:);scanf(%d %d %d,&year,&month,&day);if(year%4=0&year%100!=0)|year%400=0)flag=1;/ 当年份为闰年时, flag 为 1if(month=2)/月份为 2if(day=28&flag=0)|(day=29&flag=1)day=1;month+;/如果是平年的第28 天或者闰年的第 29 天,则 day 复位,month 加一else i

15、f(day=29&flag=0)/平年输入 29 天为错误printf(there is not 29th February!n,year);.goto m;else/其他日期,则 day 加一day+;else if(month=12)/ 月份为 12if(day=31)/如果是输入 31,则 day 复位, month 复位, year+day=1;month=1;year+;else/ 如果是其他日期,则day+day+;else if(month=1|month=3|month=5|month=7|month=8|month=10) /月份为 1,3,5,7,8,10if(day=31

16、)/如果输入 31,则 day 复位, month 加一day=1;month+;else/如果是其他日期,则day 加一day+;else/月份为 4,6,9,11if(day=30)/如果输入 30,则 day 复位, month 加一day=1;month+;.else/如果是其他日期,则day 加一day+;printf(the next day is %4d %4d %4dn,year,month,day);( 2)利用黑盒测试中的判定表法确定程序的条件项, 条件桩,动作项,动作桩,完成并优化判定表。条件桩: (1)1=month= 12(2)1=day= 31(3)2 月平年 28

17、 天,闰年 29 天动作桩:(1)日期加 1(2)日期复位(3)月份加 1 (4)月份复位(5)年份加 1 (6)不可能序号123456789101112131415每月 30 天111000000000000每月 31 天, 12 0 00000001110000月除外12 月0000000000011102 月平年0 000011- 0 000000条闰年0001100-0000000件1= 日期 =27100101001001000日期 =30天010000010010100日期 =31天001000000100010日期 =28天000000100000000日期 =29天000010

18、000000000日期加 1100101001011100日期复位010010100100010动月份加 1010010100100000作月份复位000000000000010年份加 1000000000000010不可能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月份大于

温馨提示

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

评论

0/150

提交评论