软件测试实验报告(测试计划+黑盒测试+白盒测试)-2_第1页
软件测试实验报告(测试计划+黑盒测试+白盒测试)-2_第2页
软件测试实验报告(测试计划+黑盒测试+白盒测试)-2_第3页
软件测试实验报告(测试计划+黑盒测试+白盒测试)-2_第4页
软件测试实验报告(测试计划+黑盒测试+白盒测试)-2_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

河北民族师范学院软件测试课程设计报告题目:NextDate函数姓名:班级:学号:指导老师:2014.10.9目录TOC\o"1-3"\h\u21545第1章软件测试的概念和设计要求 3257501.1测试目的 38371.2测试选题 432661.3测试人员 4325991.4测试方法 4315911.5测试资料及参考书 4186871.6关于黑盒测试 490401.7关于白盒测试 5291191.8、黑盒测试与白盒测试的比较 6149081.9软件测试过程 686021.10数据整理 721618第2章NextDate函数问题 8160622.1NextDate函数的黑盒测试 8323322.1.1.问题描述: 8285452.1.2.程序代码(开发环境:Windowsxpxp、java): 8191312.1.3.测试方法 9125932.1.4.测试用例设计 918259

2-2NextDate函数的白盒测试 11211342.2.1核心程序代码 1124092.2.2程序流程图 12222442.2.3测试用例 12259122.2.4程序控制流图 1412063设计心得与体会 14第1章软件测试的概念和设计要求1.1测试目的1.练习和掌握软件测试管理的一般过程与步骤;2.掌握测试管理的人工过程和能够通过相关管理软件实现以下工作:a)配置软件资产信息、软件需求、软件模型和缺陷数据库;b)创建和管理多个测试组和用户;c)配置测试环境、编写详细测试计划、安排测试进度;d)设计测试脚本、测试用例;e)实施测试、执行测试和评估测试。1.2测试选题NextDate函数;1.3测试人员张@@:软件测试计划及相关资料的编写与收集。李@@:对特定问题编写程序代码,并对其进行黑盒测试。王@@:对特定问题编写程序代码,并对其进行白盒测试。1.4测试方法对于选题,使用黑盒测试技术,测试内容包括等价类划分测试、边界值分析测试、决策表方法使用。使用白盒测试技术,测试内容包括语句覆盖测试、分支覆盖测试、条件覆盖测试、分支/条件覆盖测试、条件组合覆盖测试及基本路径测试。1.5测试资料及参考书1.软件测试与维护基础教程,机械工业出版社,黄武2.软件测试技术基础教程,电子工业出版社,顾海花3.软件测试,清华大学出版社,周元哲1.6关于黑盒测试测试规划是基于产品的功能,目的是检查程序各个功能是否能够实现,并检查其中的功能错误,这种测试方法称为黑盒测试(Black-boxTesting)方法。黑盒测试又称为功能测试、数据驱动测试和基于规格说明的测试。它是一种从用户观点出发的测试,一般被用来确认软件功能的正确性和可操作性。黑盒测试的基本观点是:任何程序都可以看作是从输入定义域映射到输出值域的函数过程,被测程序被认为是一个打不开的黑盒子,黑盒中的内容(实现过程)完全不知道,只明确要做到什么。黑盒测试主要根据规格说明书设计测试用例,并不涉及程序内部构造和内部特性,只依靠被测程序输入和输出之间的关系或程序的功能设计测试用例。1.黑盒测试的特点:(1)黑盒测试与软件的具体实现过程无关,在软件实现的过程发生变化时,测试用例仍然可以使用。(2)黑盒测试用例的设计可以和软件实现同时进行,这样能够压缩总的开发时间。2.黑盒测试的具体技术方法:●边界值分析法●等价类划分法●因果图法●决策表法1.7关于白盒测试测试规划基于产品的内部结构进行测试,检查内部操作是否按规定执行,软件各个部分功能是否得到充分使用,则这种测试方法称为白盒测试(White-boxTesting)方法。白盒测试又称为结构测试、逻辑驱动测试或基于程序的测试,一般用来分析程序的内部结构。白盒测试将被测程序看作一个打开的盒子,测试者能够看到被测源程序,可以分析被测程序的内部结构,此时测试的焦点集中在根据其内部结构设计测试用例。白盒测试要求是对某些程序的结构特性做到一定程度的覆盖,或者说这种测试是“基于覆盖率的测试”。通常的程序结构覆盖有:●语句覆盖●判定覆盖●条件覆盖●判定/条件覆盖●路径覆盖1.8、黑盒测试与白盒测试的比较1.9软件测试过程单元测试:针对每个单元的测试,以确保每个模块能正常工作为目标。集成测试:对已测试过的模块进行组装,进行集成测试。目的在于检验与软件设计相关的程序结构问题。确认(有效性)测试:是检验所开发的软件能否满足所有功能和性能需求的最后手段。系统测试:检验软件产品能否与系统的其他部分(比如,硬件、数据库及操作人员)协调工作。验收(用户)测试:检验软件产品质量的最后一道工序。主要突出用户的作用,同时软件开发人员也应有一定程度的参与。1.10数据整理 测试所得到的用例测试报告、BUG报告,需要进行反馈和最后的归档,归档的工作按照项目计划中所规定的内容进行,反馈的工作在测试项结束后,整理成测试总结报告后进行,具体的日期,在项目计划中有规定。 不同阶段的测试,都需要重复以上的步骤。 其他必要的数据整理的工作,由项目经理在进行过程中进行安排。第2章NextDate函数问题2.1NextDate函数的黑盒测试2.1.1.问题描述:NextDate是一个有三个变量(月份、日期和年)的函数.函数返回输入日期后面的那个日期.变量月份、日期和年都具有整数值,且满足以下条件:c1.l≤月份≤12c2.1≤日期≤31c3.1812≤年≤20122.1.2.程序代码(开发环境:Windowsxpxp、c语言):#include"stdafx.h"#include<iostream>usingnamespacestd;voidNextDate(intyear,intmonth,intday);voidmain(){ intyear=0,month=0,day=0; NextDate(year,month,day);}voidNextDate(intyear,intmonth,intday){ cout<<"请输入年份:"<<endl; cin>>year; while(!(year>=1911&&year<=2013)) { cout<<"年份超过界限,请重新输入"<<endl; cin>>year; } cout<<"请输入月份:"<<endl; cin>>month; while(month>12||month<1) { cout<<"月份输入有误,请重新输入"<<endl; cin>>month; } cout<<"请输入日期:"<<endl; cin>>day; while(day>31||day<1) { cout<<"日期输入有误,请重新输入"<<endl; cin>>day; }while(month==4&&day==31||month==6&&day==31||month==9&&day==31||month==11&&day==31) { cout<<"小月没有31号"<<endl;cin>>day; }if((year%4==0&&year%100!=0)||(year%400==0))//检查闰年; { inti=0; i=day-29; while(month==2&&i>0) { cout<<"本月是闰月,请在1-29之间从新输入日期"<<endl; cin>>day; } if(month==2&&day==29) { month=3; day=1; } elseday++; } elseday++; //月底计算; switch(month) { case1: case3: case5: case7: case8: case10: if(day==32) { month++; day=1; cout<<"明天是:"<<year<<'/'<<month<<'/'<<day<<endl; } break; case2: if(day==29) { month=3; day=1; cout<<"明天是:"<<year<<'/'<<month<<'/'<<day<<endl; } break; case4: case6: case9: case11: if(day==31) { month++; day=1; cout<<"明天是:"<<year<<'/'<<month<<'/'<<day<<endl; } break; case12: if(day==32) { year++; month=1; day=1; cout<<"明天是:"<<year<<'/'<<month<<'/'<<day<<endl; } break; } cout<<"明天是:"<<year<<'/'<<month<<'/'<<day<<endl;}2.1.3.测试方法黑盒测试(等价类划分+边界值分析+决策表方法)2.1.4.测试用例设计1.等价类划分方法输入条件编号有效等价类编号无效等价类输入年份⑴1912<=年<=2012⑺年<1912⑻年>2012输入月份⑵1<=月份<=12⑼月<1⑽月>12输入日期⑶1<=日期<=31⑾日期<1⑿日期>31输入类型⑷输入为int型⒀除int型外的任意输入输入为闰年⑸输入2月29日⒁输入为闰年2月30日输入为平年⑹输入2月28日⒂输入2月29日测试执行情况与记录测试用例编号输入预期结果实际输出覆盖等价类11988/2/31988/2/41988/2/4⑴⑵⑶⑷22000/2/292000/3/12000/3/1⑸32001/2/282001/3/12001/3/1⑹41800/1/23年份输入有误,请重新输入年份输入有误,请重新输入⑺52200/3/2年份输入有误,请重新输入年份输入有误,请重新输入⑻61912/0/3月份输入有误,请重新输入月份输入有误,请重新输入⑼71927/30/3月份输入有误,请重新输入月份输入有误,请重新输入⑽81956/3/-20日期输入有误,请重新输入日期输入有误,请重新输入⑾91972/3/43日期输入有误,请重新输入日期输入有误,请重新输入⑿10asd程序进入死循环程序进入死循环⒀112000/2/30本月是闰月,请在1-29之间从新输入日期本月是闰月,请在1-29之间从新输入日期⒁122001/2/292001/2/302001/2/30⒂2.边界值分析方法用例月份日期年预期输出实际输出161519116/16/19116/16/1911261519126/16/19126/16/1912361519626/16/19626/16/1962461520126/16/20126/16/2012561520136/16/20136/16/201366119626/2/19626/2/196276219626/3/19626/3/1962861519626/16/19626/16/1962963019627/1/19627/1/1962106311962非法输入非法输入1111519621/16/19621/16/19621221519622/16/19622/16/19621361519626/16/19626/16/1962141115196211/16/196211/16/1962151215196212/16/196212/16/19623.决策表方法(1)month、day、year的有效等价类:M1:{month:month有30天}M2:{month:month有31天,12月除外}M3:{month:month是12月}M4:{month:month是2月}D1:{day:1≤day≤27}D2:{day:day=28}D3:{day:day=29}D4:{day:day=30}D5:{day:day=31}Y1:{year:year是闰年}Y2:{year:year不是闰年}(2)根据各种有效的输入情况,程序中可能采取的操作有以下六种:a1:不可能a2:day加1a3:day复位a4:month加1a5:month复位a6:year加1规规则选项1~3456~91011~1415条件:c1:month在c2:day在c3:year在M1D1~D3–M1D4–M1D5–M2D1~D4–M2D5–M3D1~D4–M3D5–动作:a1:不可能a2:day加1a3:day复位a4:month加1a5;month复位a6:year加1√√√√√√√√√√√规规则选项161718192021~22条件:c1:month在c2:day在c3:year在M4D1–M4D2Y1M4D2Y2M4D3Y1M4D3Y2M4D4~D5–动作:a1:不可能a2:day加1a3:day复位a4:month加1a5;month复位a6:year加1√√√√√√√√用例列表及其执行结果:测试用例MonthDayYear预期输出1~3916200117/9/2001493020041/10/200459312001不可能6~9116200417/1/20041013120011/2/200111~141216200417/12/200415123120011/1/200216216200417/2/200417228200429/2/20041822820011/3/20011922920041/3/2004202292001不可能21~222302004不可能

2-2求最大公约数和最小公倍数的白盒测试2.2.1核心程序代码if(n1<n2)//使得n1为较大的数,n2为较小的数 { temp=n1; n1=n2; n2=temp; } p=n1*n2;//p为两个数的乘积 while(n2!=0)//求两个数的最大公约数 { r=n1%n2; n1=n2; n2=r; }2.2.2程序流程图2.2.3测试用例1.语句覆盖测试用例:输入期望输出执行路径测试结果Case1n1=10n2=25最大公约数:5最小公倍数:50acdegf最大公约数:5最小公倍数:502.判定覆盖测试用例输入期望输出执行路径测试结果Case1n1=5n2=4最大公约数:1最小公倍数:20abdegf最大公约数:1最小公倍数:20Case2n1=12n2=36最大公约数12最小公倍数:36acdegf最大公约数:12最小公倍数:36条件覆盖测试用例输入期望输出执行路径测试结果Case1n1=7n2=4最大公约数:1最小公倍数:28abdegf最大公约数:1最小公倍数:28Case2n1=4n2=8最大公约数:4最小公倍数:8acdef最大公约数:4最小公倍数:84.条件-判定覆盖测试用例输入期望输出执行路径测试结果Case1n1=4n2=6最大公约数:2最小公倍数:12acdegf最大公约数:2最小公倍数:12Case2n1=7n2=5最大公约数:1最小公倍数:35abdegf最大公约数:1最小公倍数:355.条件组合覆盖测试用例输入执行路径执行路径测试结果Case1n1=4n2=2最大公约数:2最小公倍数:4abdef最大公约数:2最小公倍数:4Case2n1=4n2=16最大公约数:4最小公倍数:16acdef最大公约数:4最小公倍数:16Case3n1=9n2=4最大公约数:1最小公倍数:36abdegf最大公约数:1最小公倍数:36Case4n1=4n2=6最大公约数:2最小公倍数:12acdegf最大公约数:2最小公倍数:12备注

温馨提示

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

评论

0/150

提交评论