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

下载本文档

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

文档简介

1、河北民族师范学院软件测试课程设计报告题目:姓名:班级:学号:指导老师:NextDate 函数第1章软件测试的概念和设计要求 41.1测试目的4.1.2测试选题41.3测试人员41.4测试方法41.5测试资料及参考书51.6关于黑盒测试51.7关于白盒测试6.1.8、黑盒测试与白盒测试的比较 71.9软件测试过程7.1.10数据整理第2章 NextDate函数问题102.1NextDate函数的黑盒测试1.0.2.1.1.问题描述:102.1.2.程序代码(开发环境:Win dowsxpxp、java):102.1.3.测试方法.1.0.2.1.4.测试用例设计1.52-2NextDate函数的

2、白盒测试24核心程序代码.24程序流程图25测试用例25程序控制流图28设计心得与体会2.8.第1章 软件测试的概念和设计要求1.1 测试目的1. 练习和掌握软件测试管理的一般过程与步骤;2. 掌握测试管理的人工过程和能够通过相关管理软件实现以下工作:a)配置软件资产信息、软件需求、软件模型和缺陷数据库;b)创建和管理多个测试组和用户;c)配置测试环境、编写详细测试计划、安排测试进度;d)设计测试脚本、测试用例;e)实施测试、执行测试和评估测试。1.2测试选题NextDate 函数;1.3测试人员张 :软件测试计划及相关资料的编写与收集。李:对特定问题编写程序代码,并对其进行黑盒测试。王:对特

3、定问题编写程序代码,并对其进行白盒测试。1.4测试方法对于选题,使用黑盒测试技术,测试内容包括等价类划分测试、边界值分析测试、决策表方法使用。使用白盒测试技术,测试内容包括语句覆盖测试、分支覆盖测试、条件覆 盖测试、分支/条件覆盖测试、条件组合覆盖测试及基本路径测试。1.5测试资料及参考书1软件测试与维护基础教程,机械工业出版社,黄武2软件测试技术基础教程,电子工业出版社,顾海花3软件测试,清华大学出版社,周元哲1.6关于黑盒测试测试规划是基于产品的功能,目的是检查程序各个功能是否能够实现,并检 查其中的功能错误,这种测试方法称为黑盒测试(Black-box Testi ng)方法。黑盒测试又

4、称为功能测试、数据驱动测试和基于规格说明的测试。它是一种 从用户观点出发的测试,一般被用来确认软件功能的正确性和可操作性。黑盒测试的基本观点是:任何程序都可以看作是从输入定义域映射到输出值 域的函数过程,被测程序被认为是一个打不开的黑盒子 ,黑盒中的内容(实现 过程)完全不知道,只明确要做到什么。黑盒测试主要根据规格说明书设计测试用例,并不涉及程序内部构造和内部特性,只依靠被测程序输入和输出之间的关系或程序的功能设计测试用例。1. 黑盒测试的特点:(1) 黑盒测试与软件的具体实现过程无关,在软件实现的过程发生变化时,测 试用例仍然可以使用。(2) 黑盒测试用例的设计可以和软件实现同时进行,这样

5、能够压缩总的开发时 间。2. 黑盒测试的具体技术方法:边界值分析法等价类划分法因果图法决策表法1.7关于白盒测试测试规划基于产品的内部结构进行测试 ,检查内部操作是否按规定执行,软件 各个部分功能是否得到充分使用,则这种测试方法称为白盒测试 (White-box Testi ng)方法。白盒测试又称为结构测试、逻辑驱动测试或基于程序的测试,一般用来分析程 序的内部结构。白盒测试将被测程序看作一个打开的盒子,测试者能够看到被测源程序,可以分析被测程序的内部结构,此时测试的焦点集中在根据其内部结构设计测试用 例。白盒测试要求是对某些程序的结构特性做到一定程度的覆盖,或者说这种测试是基于覆盖率的测试

6、”。通常的程序结构覆盖有:语句覆盖判定覆盖条件覆盖判定/条件覆盖路径覆盖1.8、黑盒测试与白盒测试的比较1.9软件测试过程单元测试:针对每个单元的测试,以确保每个模块能正常工作为目标。集成测试:对已测试过的模块进行组装,进行集成测试。目的在于检验与软件 设计相关的程序结构问题。确认(有效性)测试:是检验所开发的软件能否满足所有功能和性能需求的最 后手段。被测摸块I测试 1单元用户信息*jF软件需求英它元耒其它元索集成、测试八X1rTMu./ 、/ X7确认1f系统一(验以J人测试丿测试厂Xy设计侑息*交付用户被测模块/*测试*这三个测试可能交叉与前后互换系统测试:检验软件产品能否与系统的其他部

7、分(比如,硬件、数据库及操作 人员)协调工作。验收(用户)测试:检验软件产品质量的最后一道工序。主要突出用户的作 用,同时软件开发人员也应有一定程度的参与。项目黑盒测试法白盒测试法规划 方面功能的测试结构的测试忧点能确保从用户的角度能对程序内部的特定部位进方面出发进行测试行覆盖测试缺点 方面无法测试程序内部特无法检查程序的外部特性;定部位;当规格说明有无法对未实现规格说明的程误,则不能发现问题序内部欠缺部分进行测试应用 技术边界分析法 等价类划分法 决策表测试语句覆盖,判定覆盖, 条件覆盖,判定/条件覆盖, 路径覆盖,循环覆盖, 模块接口测试1.10数据整理测试所得到的用例测试报告、BUG报告

8、,需要进行反馈和最后的归档,归 档的工作按照项目计划中所规定的内容进行 ,反馈的工作在测试项结束后,整 理成测试总结报告后进行,具体的日期,在项目计划中有规定。不同阶段的测试,都需要重复以上的步骤。其他必要的数据整理的工作,由项目经理在进行过程中进行安排。第2章 NextDate函数问题2.1NextDate 函数的黑盒测试2.1.1 .问题描述:NextDate 是一个有三个变量(月份、日期和年)的函数函数返回输入日期后面的那个日期 变量月份、日期和年都具有整数值,且满足以下条件:c1. l w月份 12c2. 1 日期 31c3. 1812 年20122.1.2.程序代码(开发环境:Win

9、dowsxp xp、c语言):#i nclude"stdafx.h"#in elude <iostream>using n amespace std;void NextDate(i nt year,i nt mon th,i nt day);void mai n()int year=0 ,mon th=O,day=O;NextDate(year,m on th,day);void NextDate(i nt year,i nt mon th,i nt day)cout<<"请输入年份:"<<endl;cin> &

10、gt;year;while(!(year>=1911 && year<=2013)cout<<"年份超过界限,请重新输入"<<endl;cin> >year;cout<<"请输入月份:"<<endl;cin»mon th;while (mo nth>12|mo nth<1)cout<<"月份输入有误,请重新输入"<<endl;cin»mon th;cout<<"请输入日期

11、:"<<endl;cin> >day;while (day>31|day<1)cout<<"日期输入有误,请重新输入"<<endl;cin> >day;while(mo nth=4&&day=31|m on th=6&&day=31|m on th=9&&day=31|mo nth=11 &&day=31)cout<<"小月没有 31 号"<<endl;cin> >day;i

12、f(year%4=0 && year%1OO!=O) | (year%400=0)/ 检查闰年;int i=0;i=day-29;while(mo nth=2&&i >0)"<<e ndl;cout<<"本月是闰月,请在1-29之间从新输入日期cin> >day;if(mo nth=2&&day=29)mon th=3;day=1;else day+;else day+;/月底计算;switch(m on th)case 1:case 3:case 5:case 7:case 8:ca

13、se 10:if (day=32)mon th+;day=1;cout<<"明天是:"<<year<<7'<<month<<7'<<day<<endl;break;case 2:if(day=29)mon th=3;day=1;cout<<"明天是:"<<year<<7'<<month<<7'<<day<<endl;break;case 4:case 6:c

14、ase 9:case 11:if(day=31)mon th+;day=1;cout<<"明天是:"<<year<<7'<<month<<7'<<day<<endl;break;case 12:if(day=32)year+;mon th=1;day=1;cout<<"明天是:"<<year<<7'<<month<<7'<<day<<endl;break;c

15、out<<"明天是:"<<year<<7'<<month<<7'<<day<<endl;2.1.3.测试方法黑盒测试(等价类划分+边界值分析+决策表方法)2.14测试用例设计1 .等价类划分方法输入条件编号有效等价类编号无效等价类输入年份1912<=年<=2012年<1912年>2012输入月份1<=月份 <=12月<1月>12输入日期1<=日期 <=31(11)日期1(12)日期31输入类型输入为int型(13)除

16、int型外的任意输入输入为闰年输入2月29日(14)输入为闰年2月30日输入为平年输入2月28日(15)输入2月29日测试执行情况与记录测试用例编号输入预期结果实际输出覆盖等价类11988/2/31988/2/41988/2/422000/2/292000/3/12000/3/132001/2/282001/3/12001 /3/141800/1/23年份输入年份输入有误,请重新输有误,请入重新输入52200/3/2年份输入年份输入有误,请重新输有误,请入重新输入61912/0/3月份输入月份输入有误,请重新输有误,请重新输入入71927/30/3月份输入月份输入有误,请重新输有误,请入重新输

17、入81956/3/-2日期输入日期输入有误,请重新输(11)0有误,请入重新输入91972/3/43日期输入日期输入有误,请重新输(12)有误,请入重新输入10asd程序进入程序进入死循环(13)死循环112000/2/30本月是闰本月是闰月,请在1-29之(14)月,请在间从新输入日期1-29之间从新输入日期122001/2/292001/2/302001/2/30(15)C: ProEra» FilesMicrosoft Visual弔输入年份:2301WA月份3请输入日期;硝天是 2剜缶1明天是:2001/4/1Press Any key to continue请重新输入请重新

18、输入请重新输入年份超过界限.年份超过界限,D "C:Files Micro soft Visual St雨痢人华苗*220B年份超过界限,请董新输入 徉粉超过界限,请重新输入 年份超过界限,请重新输人"C: Pr口沪空情输入年粉;1912请输入月繪匕睛输入日期,C:k为份输入有误,请重新输入所输入年你H2?惰輪入月份:P0仍份输入有误,请重新輸入晴输入日期;C:%请输:年粉:1956章输入月份: 書输入日期: 卜20日期输入有误,请重新输入S *C;Profra»t Visual Stud1?2请输入月希m彌1入日期:"C;PrograB FilesXI

19、lcroscft Visual Studio-昔期输入有误.请重新输入需输入年份:请输入月份:鲁输入日期:30本月是闰月,请£1-2?之间从新输入日期S *C;XPrograM FilEsWiGrosoft Visual StudioMyPi:901请输入月份;备输入目期:29明天是=2001220Pr-ess any key to cont inueB *C:XProgTa* FilesMicrosoft Visual Studio!n.4艮艮艮艮日3X3X3 nrJnrJ h- b-r- Tl* TlIJT. E - > .1* IT IL » E- - I- *

20、 1二m-&-§-三g-二B-旦二B-二e-L_B-hg -E-E-it Iftutf 一-n-IJi-= iu-_ 十冃主冃主耳主吒左冃丄冃主同-主口韦島|冃土 I M 1*1*1 一 I I L I II I 二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/196276219

21、626/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 :mon th 有 30 天M2 :month :mo nth有3

22、1天,12月除外M3 :month :mon th 是 12 月M4 :month :mon th 是 2 月D1 : day : 1 wday <27D2 : day : day=28D3 : day : day=29D4 : day: day=30D5 : day: day=31Y1: year : year 是闰年 Y2 : year: year 不是闰年(2)根据各种有效的输入情况,程序中可能采取的操作有以下六种al :不可能a2 : day力口 1a3 : day复位a4 : mo nth 加 1a5 : mo nth 复位 a6 : year 加 1规选则 项、1345691

23、0111415条件:c1 : month 在M1M1M1M2M2M3M3c2 : day 在D1D3D4D5D1D4D5D1D4D5c3 : year 在动作:a1:不可能Va2: day 加 1VVa3 : day复位VVVa4 : mo nth 力口VV1Va5;m on th复V位a6:year 加 1、规则项'、16171819202122条件:cl :mon th 在M4M4M4M4M4M4c2 :day在D1D2D2D3D3D4D5c3 :year 在Y1Y2Y1Y2动作:al:不可能VVa2:day 加 1Va3:day复位VVa4:mon th 力口VV1a5;m on

24、 th复位a6:year 加 1用例列表及其执行结果测试用例Mon thDayYear预期输9/2001493020041/10/200459312001不可能69116200417/1/20041013120011/2/200111141216200417/12/200415123120011/1/200216216200417/2/200417228200429/2/20041822820011/3/20011922920041/3/2004202292001不可能21222302004不可能2-2求最大公约数和最小公倍数的白盒测试221核心程序代码if(n1&l

25、t;n2)11使得n1为较大的数,n2为较小的数temp=n1;n1= n2;n 2=temp;p=n1*n 2;/p为两个数的乘积while( n2!=0)求两个数的最大公约数r=n 1% n2;n1= n2;n 2=r;程序流程图ACT-T-n2& <.Wl-LJ U.1 和 P £1(3>测试用例1.语句覆盖测试用例输入期望输出执行路径测试结果Caseln1=10n2=25最大公约数:5最小公倍数:50acdegf最大公约数:5最小公倍数:502判定覆盖测试用例输入期望输出执行路径测试结果Caseln1=5最大公约数:1abdegf最大公约数1n 2=4最小

26、公倍数:20最小公倍数20Case2n1=12最大公约数12acdegf最大公约数12n 2=36最小公倍数:36最小公倍数363条件覆盖测试用例输入期望输出执行路径测试结果Case1n1=7最大公约数1abdegf最大公约数1n 2=4最小公倍数28最小公倍数28Case2n1=4最大公约数4acdef最大公约数4n 2=8最小公倍数8最小公倍数84条件-判定覆盖测试用例输入期望输出执行路径测试结果Case1n1=4最大公约数2acdegf最大公约数2n 2=6最小公倍数12最小公倍数12Case2n1=7最大公约数1abdegf最大公约数1n 2=5最小公倍数35最小公倍数355条件组合覆盖测试用例输入执行路径执行路径测试结果Caseln1=4最大公约数2abdef最大公约数2n 2=2最小公倍数4最小公倍数4Case2n1=4最大公约数4acdef最大公约数4n2=16最小

温馨提示

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

评论

0/150

提交评论