您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 黑盒测试(等价类划分)
实验一黑盒测试法——等价类划分法实验目的:1.掌握等价类划分的方法2.掌握按等价类方法设计测试用例实验内容:1、请用等价类划分法为三角形问题划分等价类,并设计相应的测试用例,测试下面三角形问题程序,找出缺陷并改正,给出缺陷报告。#includeiostream.hvoidmain(){inta,b,c;cout请输入三角形的三条边(界于1-100之间)endl;cinabc;if(a=1||a=100)couta的值超过允许的范围!;if(b=1||b=100)coutb的值超过允许的范围!;if(c=1||c=100)coutc的值超过允许的范围!;if(a+bc||a+cb||b+ca)couta,b,c的值不能构成三角形!;if(a==b&&b==c)cout是等边三角形!;if(a==b||b==c||a==c)cout是等边三角形!;if(ab&&bc&&ca)cout一般三角形!;}三角形问题:划分等价类有效等价类号码无效等价类号码输入条件输入三个整数整数1a为非整数一边为非整数b为非整数c为非整数a,b为非整数两边为非整数b,c为非整数a,c为非整数三边a,b,c均为非整数12131415161718三个数2只给a只给一边只给b只给c只给a,b只给两边只给b,c1920212223只给a,c给出三个以上2425非零数3a为0一边为零b为0c为0a,b为0两边为零b,c为0a,c为0三边a,b,c均为026272829303132正数4a0一边0b0c0a0且b0二边0a0且c0b0且c0三边均0:a0且b0且c033343536373839输出条件构成一般三角形a+bcb+caa+cb567a+bca+b=cb+cab+c=aa+cba+c=b404142434445构成等腰三角形a=b且两边之b=c和大于a=c第三边8910构成等边三角形a=b=c11测试用例:1、覆盖有效等价类的测试用例用例IDabc预期输出覆盖等价类号码12345345445455545444一般三角形等腰三角形等腰三角形等腰三角形等边三角形1—71—7,81—7,91—7,101—7,112、覆盖无效等价类的测试用例用例IDabc覆盖等价类号码预期输出用例IDabc覆盖等价类号码预期输出6782.54534.55345.5121314无效输入无效输入无效输入2324252600530004000029303132无效输入无效输入无效输入无效输入9103.54.5534.55.51516无效输入2728-3453-453334无效输入11123.545.53.54.55.51718无效输入无效输入无效输入2934-535无效输入无效输入131415345192021无效输入无效输入无效输入30313233-3-45-34-53-4-5-3-4-536373839无效输入无效输入无效输入无效输入16171819344535345622232425无效输入无效输入无效输入无效输入3435363731532531132140414243非三角形非三角形非三角形非三角形202122045305340262728无效输入无效输入无效输入38391423414445非三角形非三角形缺陷报告:缺陷编号1用例编号40缺陷代码错误类型严重级别严重优先级优先缺陷状态New测试阶段单元□集成□系统□验收□其它()可重现性是□否BUG原因□需求分析基本设计□详细设计□设计式样理解□编程□数据库设计□环境配置□其它()缺陷描述程序无法正常执行预期结果程序能运行,并且有运行的结果重现步骤备注打开vc++6.0,运行以下源代码。#includeiostream.hvoidmain(){inta,b,c;cout请输入三角形的三条边(界于1-100之间)endl;cinabc;if(a=1||a=100)couta的值超过允许的范围!;if(b=1||b=100)coutb的值超过允许的范围!;if(c=1||c=100)coutc的值超过允许的范围!;if(a+bc||a+cb||b+ca)couta,b,c的值不能构成三角形!;if(a==b&&b==c)cout是等边三角形!;if(a==b||b==c||a==c)cout是等边三角形!;if(ab&&bc&&ca)cout一般三角形!;}发现错误,无法执行。以下部分由BUG修改人填写缺陷修改描述将if语句的“<>”改成“!=”测试人修正人确认人修正年月日日期缺陷编号2用例编号1缺陷类型严重级别严重优先级优先缺陷状态测试阶段单元□集成□系统□验收□其它()可重现性BUG原因□需求分析基本设计□详细设计□设计式样理解□编程□数据库设计□环境配置□其它()缺陷描述输入正确的三个数,不能进行正确的判断三角形的类型预期结果是一般三角形!重现步骤1、在VC++6.0中运行源程序输入数据如图所示:以下部分由BUG修改人填写缺陷修改描述将以下代码if(a+bc||a+cb||b+ca)couta,b,c的值不能构成三角形!;改成if(a+bc||a+cb||b+ca)couta,b,c的值不能构成三角形!;测试人修正人确认人修正日期缺陷编号3用例编号2~4缺陷类型严重级别严重优先级优先缺陷状态测试阶段单元□集成□系统□验收□其它()可重现性BUG原因□需求分析基本设计□详细设计□设计式样理解□编程□数据库设计□环境配置□其它()缺陷描述输入正确的三个数,不能正确判断三角形的类型预期结果等腰三角形重现步骤在VC++6.0中运行源程序输入数据如图所以:以下部分由BUG修改人填写缺陷修改描述将以下代码:if(a==b&&b==c)cout是等边三角形!;改为:if((a==b&&b!=c)||(a==c&&c!=b)||(b==c&&a!=c))cout是等腰三角形!;测试人修正人确认人修正日期缺陷编号4用例编号6~12,20~39缺陷类型严重级别严重优先级优先缺陷状态测试阶段单元□集成□系统□验收□其它()可重现性BUG原因□需求分析基本设计□详细设计□设计式样理解□编程□数据库设计□环境配置□其它()缺陷描述输入无效数据,不能判定能否构成三角形预期结果给出提示判断是否为有效的输入重现步骤在VC++6.0中运行源程序输入数据如图所示:以下部分由BUG修改人填写缺陷修改描述将以下代码:if(ab&&bc&&ca)cout一般三角形!;改为:if((a0&&a=100)&&(b0&&b=100)&&(c0&&c=100)){if(a!=b&&b!=c&&c!=a)cout一般三角形!;}测试人修正人确认人修正日期缺陷编号5用例编号40~45缺陷类型严重级别严重优先级优先缺陷状态测试阶段单元□集成□系统□验收□其它()可重现性BUG原因□需求分析基本设计□详细设计□设计式样理解□编程□数据库设计□环境配置□其它()缺陷描述输入不能构成三角形的有效数据,不能判定是否为三角形预期结果不能构成三角形重现步骤在VC++6.0中运行源程序输入数据如图所示:以下部分由BUG修改人填写缺陷修改描述将以下代码:if(ab&&bc&&ca)cout一般三角形!;改为:if((a0&&a=100)&&(b0&&b=100)&&(c0&&c=100)){if((a!=b&&b!=c&&c!=a)&&(a+bc&&a+cb&&b+ca))cout一般三角形!;}测试人修正人确认人修正日期缺陷编号6用例编号13~19缺陷类型严重级别严重优先级优先缺陷状态测试阶段单元□集成□系统□验收□其它()可重现性BUG原因□需求分析基本设计□详细设计□设计式样理解□编程□数据库设计□环境配置□其它()缺陷描述只输入三角形的一边或两边,程序进入等待的状态,没有提示。预期结果给出提示判断是否为有效的输入重现步骤在VC++6.0中运行源程序输入数据如图所示:以下部分由BUG修改人填写缺陷修改描述测试人修正人确认人修正日期2、某城市电话号码由三部分组成,分别是:1)地区码:以0开头的三位或者四位数字(包括0);2)电话号码:以非0、非1开头的七位或者八位数字。假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。要求:(1)请选择适当的黑盒测试方法,写出选择该方法的原因,并使用该方法的步骤,给出测试用例表。(2)如果所生成的测试用例不够全面,请考虑用别的测试方法生成一些补充的测试用例。解:(1)采用等阶类划分法,因为等阶类划分把输入域分成若干部分,然后从每个部分选取少数代表性的数据当做测试用例。(2)步骤:划分等阶类,列出等阶类表,确定测试用例。等价类表:输入条件有效等价类号码无效等价类号码地区码0以0开头的3位数以0开头的4位数123非数字字符非0开头的3位数非0开头的4位6789数0开头且少于3位数字0开头且多于4位数字非0开头且少于3位数非0开头且多于4位数101112电话号码非0、非1开头的7位数非0、非1开头的8位数45有非数字字符少于7位数多于8位数起始位为0起始位为11314151617测试用例表:用例ID测试数据期望结果覆盖等价类地区码电话号码102235688接受(有效)1,42022347789接受(有效)1,530872235688接受(有效)2,4408722347789接受(有效)2,5502342235688接受(有效)3,46023422347789接受(有效)3,5704A32235688拒绝(无效)681222235688拒绝(无效)7912232235688拒绝(无效)810022235688拒绝(无效)911022342235688拒绝(无效)1012122235688拒绝(无效)1113123452235688拒绝(无效)12140782334AA4拒绝(无效)1315078234567拒绝(无效)1416078723467890拒绝(无效)15170780234455拒绝(无效)16180781234546拒绝(无效)173、请尝试编写NextDate函数,考虑闰年,2月等特殊情况,并划分等价类,按强一般等价类划分法设计测试用例,并进行测试,要求给出部分测试用例截图,撰写测试报告(模版见附录3)。测试报告一、实验目的1.掌握等价类划分的方法2.掌握按等价类方法设计测试用例二、实验内容2.1实验问题描述:请尝试编写NextDate函数,考虑闰年,2月等特殊情况,并划分等价类,按强一般等价类划分法设计测试用例,并进行测试,要求给出部分测试用例截图2.2测试环境与配置:在xp系统下运行VC++6.0的Win32控制台应用程序,执行c++源程序。2.3源程序:2.1测试程序源代码#includeiostreamusingnamespacestd;voidNextDate(intyear,intmonth,intday);voidmain(){intyear=0,month=0,day=0;NextDate(year,month,day);}voidNextDate(intyear,intmonth,intday){cout请输入年份:endl;cinyear;while(!(year=1811&&year=2013)){cout年份超过界限,请重新输入endl;cinyear;}cout请输入月份:endl;cinmonth;while(month12||month1){cout月份输入有误,请重新输入endl;cinmonth;}cout请输入日期:endl;cinday;while(day31||day1){cout日期输入有误,请重新输
本文标题:黑盒测试(等价类划分)
链接地址:https://www.777doc.com/doc-4604850 .html