版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验报告书课程名称:软件测试实验题目:黑盒测试报告专业:教育技术学班级:教技142学生姓名:安卓指导老师:郭小雪所属学期:2017-2018学年第二学期、引言1.1目的测试报告为三角形问题和找零钱最佳组合问题项目的黑盒测试报告,目的在于总结测试阶段的测试以及分析测试结果。实验环境在Windows2000(SP2)或WindowsXP操作系统上,使用C++®言,工具作为开发环境(IDE)实验要求1.根据给由的程序分别使用等价类划分法、边界值分析法、判定表方法、因果图法、正交试验法、功能图法、错误推测法来设计相应的测试用例。2输入数据进行测试,填写测试用例。二、实验原理黑盒测试原理:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看作一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试。从理论上讲,黑盒测试只有采用穷举输入测试,把所有可能的输入都作为测试情况考虑,才能查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但可能的输入进行测试。这样看来,完全测试是不可能的,所以我们要进行有针对性的测试,通过制定测试案例指导测试的实施,保证软件测试有组织、按步骤,以及有计划地进行。黑盒测试行为必须能够加以量化,才能真正保证软件质量,而测试用例就是将测试行为具体量化的方法之一。具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等。等价类划分的办法是把程序的输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中的作用等价于这一类中的其他值。该方法是一种重要的常用的黑盒测试用例设计方法。划分等价类划分等价类:等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试。因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据。取得较好的测试结果。等价类划分可有两种不同的情况:有效等价类和无效等价类。有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。无效等价类:与有效等价类的定义恰巧相反。设计测试用例时,要同时考虑这两种等价类。因为,软件不仅要能接收合理的数据,也要能经受意外的考验。这样的测试才能确保软件具有更高的可靠性。边界值分析边界值分析是通过选择等价类边界的测试用例。边界值分析法不仅重视输入条件边界,而且也必须考虑输出域边界。它是对等价类划分方法的补充。(1)边界值分析方法的考虑;长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。使用边界值分析方法设计测试用例,首先应确定边界情况。通常输入和输出等价类的边界,就是应着重测试的边界情况。应当选取正好等于刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。(2)基于边界值分析方法选择测试用例的原则:)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值以及刚刚超越这个范围边界的值作为测试输入数据。)如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据。3)根据规格说明的每个输出条件,使用前面的原则1)。4)根据规格说明的每个输出条件,应用前面的原则2)。5)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。6)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。7)分析规格说明,找出其它可能的边界条件。错误推测法错误推测法是基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法。错误推测方法的基本思想:列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。例如,在单元测试时曾列出的许多在模块中常见的错误。以前产品测试中曾经发现的错误等,这些就是经验的总结。还有,输入数据和输出数据为0的情况。输入表格为空格或输入表格只有一行。这些都是容易发生错误的情况。可选择这些情况下的例子作为测试用例。因果图法前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系,相互组合等。考虑输入条件之间的相互组合,可能会产生一些新的情况。但要检查输入条件的组合不是一件容易的事情,即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。这就需要利用因果图(逻辑模型)。因果图方法最终生成的就是判定表。它适合于检查程序输入条件的各种组合情况。三、实验内容三角形问题1)划分等价类有效等价类:输入3个正整数或正小数:1、两数之和大于第三数,如A<B+GB<C+A;C<A+B2、两数之和不大于第三数3、两数相等,A=A=B或B=C或C=A4、三数相等,A=A=B=C5、三数不相等,如A!=B,B!=C,C!=A无效等价类:1、空2、负整数3、非数字4、少于三个数三角形测试用例类别输入条件是否是三角形是否是等腰三角形是否是等腰直角三角形输入条件是否是三角形是否是等腰三角形是否是等腰直角三角形有效等价类(A>0)(1)(B>0) (2)(C>0) (3)(A+B>C)⑷(B+C>A)⑸(C+A>B)(6)(A=B)(13)(B=C)(14)(C=A)(15)(A=B)and(A2+B2=C2)(17)(B=C)and(呼+C2=A2)无效等价类(A<=0) (7)(B<=0) (8)(C<=0) (9)(A+B<=C)(10)(B+C<=A)(11)(C+A<=B)(12)(A!=B)and(B!=C)and(C!=A)(16)(18)(A!=B)and(B!=C)and(C!=A)(20)(C=A)and(C2+A2=B2)(19是否是等边三角形(A=B)and(B=C)and(C=A)(21)(A!=B)(22)(B!=C)(23)(C!=A)(24)三角形测试用例:用最少的测试用例覆盖所有的有效等价类,而无效等价类每个类型都要覆盖到序号输入[A,B,C]覆盖等价类输由1[3,4,5]⑴(2)(3)(4)(5)(6)是三角形2[1,2,3](10)非三角形3[1,3,2](11)非三角形4[3,1,2](12)非三角形5[3,3,4](1)(2)(3)(4)(5)(6)(13)等腰三角形6[3,4,4](1)(2)(3)(4)(5)(6)(14)等腰三角形7[3,4,3](1)(2)(3)(4)(5)(6)(15)等腰三角
形8[3,4,5](1)(2)(3)(4)(5)(6)(16)(20)(22)(23)(24)是三角形9[3,3,3](1)(2)(3)(4)(5)(6)(16)(21)等边三角形10[3,4]无效等价类错误提示三角形问题”的测试用例(边界值分析法)测试用例说明测试数据期望结果(1)a=0034输入无效(2)b=0304(3)c=0340(4)a>0345这个三角形是三边不等的(5)b>0345(6)c>0345⑺a+b=c235(8)a+c=b235(9)b+c=a235(10)a+b<c236(11)a+c<b236输入无效(12)b+c<a236(13)|a-b|二c532(14)|a-c|二b532(15)|b-c|二a532(16)|a-b|>c531(17)|a-c|>b531(18)|b-c|>a531(19)a+bwc345这个三角形是三边不等的(20)a=b+c445这个三角形是等腰的⑵)a=c+b454(22)b=ga544(23)a=b=c444这个三角形是等边的测试源代码、测试代码等价值测试法package*“三角形问题”的测试用例(等价类测试)**@authorMario**/publicclassTestTriangle{@SuppressWarnings("resource")publicstaticvoidmain(String[]args){try{inta,b,c;"开始黑盒测试");Scannerin=newScanner;"条件1.请输入第一个大于0且小于等于100的整数");a=());if(a<=0||a>100||!(a).matches("[0-9]+")){thrownewException();}"条件2.请输入第二个大于0且小于等于100的整数");b=());if(b<=0||b>100||!(b).matches("[0-9]+")){thrownewException();}"条件3.请输入第三个大于0且小于等于100的整数");c=());if(c<=0||c>100||!(c).matches("[0-9]+")){thrownewException();}if((!(a+b<=c||a+c<=b||b+c<=a))&&(a>=1&&a<=100)&&(b>=1&&b<=100)&&(c>=1&&c<=100)){if(a==b&&a==c){+","+b+","+c+'可以组成一个等边三角形");}elseif(a==b||a==c||b==c){+","+b+","+c+'可以组成一个等腰三角形");}elseif((a*a+b*b==c*c&&a==b)||(a*a+c*c==b*b&&a==c)||(c*c+b*b==a*a&&c==b)){+","+b+","+c+,可以组成一个等腰直角三角形");}elseif((a*a+b*b==c*c)||(a*a+c*c==b*b)||(c*c+b*b==a*a)){+","+b+","+c+'可以组成一个直角三角形");}else{+","+b+","+c+"^以组成一个一般三角形");}}else{if(a<1||a>100)"不满足条件1,不能构成三角形");if(b<1||b>100)"不满足条件2,不能构成三角形");if(c<1||c>100)"不满足条件3,不能构成三角形");if(c<1||c>100)"不满足条件3,不能构成三角形");if(a>=b+c)"不满足a<b+c不能构成三角形");if(b>=a+c)"不满足b<a+c不能构成三角形");if(c>=a+b)"不满足c<a+b不能构成三角形");}”黑盒测试结束");}catch(Exceptione){”不满足条件,不能构成三角形\n黑盒测试结束");}}^terminated〉Te-stTriangle[JavaApplication]D:\JDn^avaw,exe(2017^4月9日下午;try{inta,b,c;TOC\o"1-5"\h\z"开始黑盒测试");Scannerin=newScanner;"条件1.请输入第一个大于0且小于等于100的整数");a=());"条件2.请输入第二个大于0且小于等于100的整数");b=());"条件3.请输入第三个大于0且小于等于100的整数");c=());if(a<1||a>100||!(a).matches("[0-9]+")){thrownewException();}if(b<1||b>100||!(b).matches("[0-9]+")){thrownewException();}if(c<1||c>100||!(c).matches("[0-9]+")){thrownewException();}if((!(a+b<=c||a+c<=b||b+c<=a))){if(a!=b&&b!=c&&a!=c){TOC\o"1-5"\h\z"这个三角形是三边不等的");}elseif(a==b&&b==c&&a==c){"这个三角形是等边的");}elseif(a==b||a==c||c==b){"这个三角形是等腰的");}}else{"输入无效");”黑盒测试结束");}catch(Exceptione){”输入无效\n黑盒测试结束");}}}eConsole就\|<terminai:ed5>TestTnangle2[JavaApplicatiio-n]D:\JDK\JDK\bin\Javaw.exe(2017^4角开始黑盒测试条件1.请输入第一个大于。且小于等于1。。的整数。条件2.请输入第二个大于。且小于等于1。。的整数3条件3.请输入第三个大于。旦小于等于1。。的整数4输入无效黑盒测试结束OConsol4罚Verminated^Te5tTriangie2[JavaApplication]D:\JDK\JDK\bin\javaWnexe(2017千开始黑盒测试条件1.请输入第f大于。且小于等于1。。的整数2条件2.请输入第二个大于。自小于等于1。。的整数3条件M请输入第三个大于。且小于等于1。。的整数5输入无效黑会测试结束找零钱最佳组合、分析输入的情形
RPR>1000<R<=100R<=0P>100R<=P<=100P<R、分析输出情形N50N10N5N1N50=1N50=04>=N10>=1N10=0N5=1N5=04>=N1>=1N1=0三、分析规格中每一决策点之情形,以RR1,RR2,RR3表示计算要找50,10,5元货币数时之剩余金额。R>100R<=0P>100P<RRR1>=50RR2>=10RR3>=5四、由上述之输入/输由条件组合由可能的情形。(RR=P-RR>100R<=00<R<=100,P>1000<R<=100,P<R0<R<=100,R<=P<=100,RR=500<R<=100,R<=P<=100,RR=490<R<=100,R<=P<=100,RR=100<R<=100,R<=P<=100,RR=90<R<=100,R<=P<=100,RR=50<R<=100,R<=P<=100,RR=40<R<=100,R<=P<=100,RR=10<R<=100,R<=P<=100,RR=0五、为满足以上之各种情形,测试资料设计如下:.货品价格=101.货品价格=0.货品价格=-1.货品价格=100,付款金额=101.货品价格=100,付款金额=99.货品价格=50,付款金额=100.货品价格=51,付款金额=100.货品价格=90,付款金额=100.货品价格=91,付款金额=100.货品价格=95,付款金额=100.货品价格=96,付款金额=100.货品价格=99,付款金额=100TOC\o"1-5"\h\z.货品价格=100,付款金额=100测试源代码packageclassPrice{publicstaticvoidmain(String[]args){"请输入您购买的东西价格:");Scannerscanner=newScanner;intvalue=();if(value>100||value<0){"无效货品价格");"请输入您购买的东西价格:");value=();}"请输入您支付的金额:");intvalue2=();if(value>value2||value2>100){"无效付款");}elseif(value==value2){"不找零");}else{intvalue3=value2-value;if(value3>100||value3<0){"输入的价钱不在本店范围内");value=();}Priceprice=ne
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湖南省岳阳市君山区2025届中考生物四模试卷含解析
- 广西龙胜县2025届中考生物猜题卷含解析
- 黑龙江省哈尔滨市道里区2025届中考生物模拟试题含解析
- 江苏省泰州市姜堰区溱潼二中2025届中考生物对点突破模拟试卷含解析
- 2025年度幼儿教育机构幼师聘用合同科学育儿指导4篇
- 2025年度特色小镇铁艺大门设计与施工总承包合同
- 2025年度足球教练员青少年培养聘用合同4篇
- 2025年度学生托管机构标准化服务合同协议书
- 2025年度财务信息化系统集成合同4篇
- 2025年上海市单位职工合同(4篇)
- 1-35kV电缆技术参数表
- 信息科技课程标准测(2022版)考试题库及答案
- DL∕T 1909-2018 -48V电力通信直流电源系统技术规范
- 2024年服装制版师(高级)职业鉴定考试复习题库(含答案)
- 门诊部缩短就诊等候时间PDCA案例-课件
- NB-T32042-2018光伏发电工程建设监理规范
- 2024年安全员-C证考试题库及答案(1000题)
- 电解水制氢装置安全操作注意事项
- 2024年交管12123学法减分试题库大全(有图有答案)
- 餐厨垃圾收运安全操作规范
- 基于新课标学习的教材解读及教学建议部编《道德与法治》二年级下册
评论
0/150
提交评论