《实验3-黑盒测试等价类划分(共12页).doc》由会员分享,可在线阅读,更多相关《实验3-黑盒测试等价类划分(共12页).doc(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上实验3 墨盒测试法等价类划分法实验目的:1.掌握等价类划分的方法 2.掌握按等价类测试用例实验内容:1、请用等价类划分法为三角形问题划分等价类,并设计相应的测试用例,测试下面三角形问题程序,找出缺陷并改正。#include "iostream.h"void main()int a,b,c;cout<<"请输入三角形的三条边(界于1-100之间)"<<endl;cin>>a>>b>>c;if(a<=1|a>=100)cout<<"a的值超
2、过允许的范围!"if(b<=1|b>=100)cout<<"b的值超过允许的范围!"if(c<=1|c>=100)cout<<"c的值超过允许的范围!"if(a+b>c|a+c>b|b+c>a)cout<<"a,b,c的值不能构成三角形!"if(a=b&&b=c)cout<<"是等边三角形!"if(a=b|b=c|a=c)cout<<"是等腰三角形!"if(a<&
3、gt;b&&b<>c&&c<>a)cout<<"一般三角形!"划分等价类:有效等价类号码 无效等价类号码 输 入 条 件 输 入 三 个 整 数 整数 1一边为非整数a为非整数 12b为非整数 13c为非整数 14两边为非整数a、b为非整数 15a、c为非整数 16b、c为非整数 17三边都为非整数a、b、c都为非整数 18输入三个数 2只给一个数 只给a 19 只给b 20 只给c 21只给两个数只给a、b 22只给a、c 23只给b、c 24三个数都没有给出a、b、c为空 25非零 3一边为0 a为0
4、26 b为0 27 c为0 28两边为0a、 b为0 29a、c为0 30b、c为0 31三边都为0a、b、c为0 32正数 4一边小于0 a小于0 33 b小于0 34 c小于0 35两边小于0a、b小于0 36a、c小于0 37b、c小于0 38输出条件构成一个三角形 a+b>c 5a+b<c 39a+b=ca+c>b 6a+c<b 40a+c=bb+c>a 7b+c<a 41b+c=a构成一个等腰三角形(且两边之和大于第三遍)a=b 8a=c 9b=c 10构成一个等边三角形a=b=c 11测试用例1. 覆盖有效类的测试用例用例IDa b c预期输出覆
5、盖等价类号码13 4 5一般三角形1724 4 5等腰三角形17,834 5 5等腰三角形17,945 4 5等腰三角形17,1054 4 4等边三角形17,112. 覆盖无效类的测试用例用例IDa b c覆盖等价类号码预期输出用例IDa b c覆盖等价类号码预期输出62.5 4 512无效输入230 0 529无效输入73 4.5 513无效输入243 0 030无效输入83 4 5.514无效输入250 4 031无效输入260 0 032无效输入93.5 4.5 515无效输入27-3 4 533无效输入103 4.5 5.516无效输入283 -4 534无效输入113.5 4 5.5
6、17无效输入293 4 -535无效输入123.5 4.5 5.518无效输入13319无效输入30-3 -4 536无效输入14420无效输入31-3 4 -537无效输入15 521无效输入323 -4 -538无效输入33-3 -4 -539无效输入163 422无效输入343 1 540非三角形174 523无效输入353 2 541非三角形183 524无效输入363 1 142非三角形1925无效输入373 2 143非三角形200 4 526无效输入381 4 244非三角形213 0 527无效输入393 4 145非三角形223 4 028无效输入缺陷报告:缺陷编号1用例编号
7、40缺陷类型代码错误严重级别严重优先级优先缺陷状态New测试阶段单元 集成 系统 验收 其它( )可重现性是 否BUG原因需求分析 基本设计 详细设计 设计式样理解 编程 数据库设计 环境配置 其它 ( )缺陷描述程序无法正常执行预期结果程序能运行,并且有运行的结果重现步骤备注打开+6.0,运行以下源代码。#include "iostream.h"void main()int a,b,c;cout<<"请输入三角形的三条边(界于1-100之间)"<<endl;cin>>a>>b>>c;if(a&
8、lt;=1|a>=100)cout<<"a的值超过允许的范围!"if(b<=1|b>=100)cout<<"b的值超过允许的范围!"if(c<=1|c>=100)cout<<"c的值超过允许的范围!"if(a+b>c|a+c>b|b+c>a)cout<<"a,b,c的值不能构成三角形!"if(a=b&&b=c)cout<<"是等边三角形!"if(a=b|b=c|a=c)co
9、ut<<"是等边三角形!"if(a<>b&&b<>c&&c<>a)cout<<"一般三角形!"发现错误,无法执行。以下部分由BUG修改人填写缺陷修改描述将语句的“”改成“!”测试人修正人确认人修正日期年 月 日 缺陷编号2用例编号1缺陷类型代码错误严重级别严重优先级优先缺陷状态New测试阶段单元 集成 系统 验收 其它( )可重现性是 否BUG原因需求分析 基本设计 详细设计 设计式样理解 编程 数据库设计 环境配置 其它 ( )缺陷描述输入正确的三个数,不能进行
10、正确的判断三角形的类型预期结果是一般三角形!重现步骤备注1、 在VC+6.0中运行源程序输入数据如图所示:以下部分由BUG修改人填写缺陷修改描述将以下代码if(a+b>c|a+c>b|b+c>a)cout<<"a,b,c的值不能构成三角形!"改成if(a+b<c|a+c<b|b+c<a)cout<<"a,b,c的值不能构成三角形!"测试人修正人确认人修正日期年 月 日 缺陷编号3用例编号24缺陷类型严重级别严重优先级优先缺陷状态New测试阶段单元 集成 系统 验收 其它( )可重现性是 否BUG
11、原因需求分析 基本设计 详细设计 设计式样理解 编程 数据库设计 环境配置 其它 ( )缺陷描述输入正确的三个数,不能正确判断三角形的类型预期结果等腰三角形重现步骤备注在VC+6.0中运行源程序输入数据如图所以:以下部分由BUG修改人填写缺陷修改描述将以下代码:if(a=b&&b=c)cout<<"是等边三角形!"改为:if(a=b&&b!=c)|(a=c&&c!=b)|(b=c&&a!=c)cout<<"是等腰三角形!"测试人修正人确认人修正日期年 月 日 缺陷编号
12、4用例编号612,2039缺陷类型严重级别严重优先级优先缺陷状态New测试阶段单元 集成 系统 验收 其它( )可重现性是 否BUG原因需求分析 基本设计 详细设计 设计式样理解 编程 数据库设计 环境配置 其它 ( )缺陷描述输入无效数据,不能判定能否构成三角形预期结果给出提示判断是否为有效的输入重现步骤备注在VC+6.0中运行源程序输入数据如图所示:以下部分由BUG修改人填写缺陷修改描述将以下代码:if(a<>b&&b<>c&&c<>a)cout<<"一般三角形!"改为:if(a>0&
13、amp;&a<=100)&&(b>0&&b<=100)&&(c>0&&c<=100) if(a!=b&&b!=c&&c!=a)cout<<"一般三角形!"测试人修正人确认人修正日期年 月 日 缺陷编号5用例编号4045缺陷类型严重级别严重优先级优先缺陷状态New测试阶段单元 集成 系统 验收 其它( )可重现性是 否BUG原因需求分析 基本设计 详细设计 设计式样理解 编程 数据库设计 环境配置 其它 ( )缺陷描述输入不能构成三
14、角形的有效数据,不能判定是否为三角形预期结果不能构成三角形重现步骤备注在VC+6.0中运行源程序输入数据如图所示:以下部分由BUG修改人填写缺陷修改描述将以下代码:if(a<>b&&b<>c&&c<>a)cout<<"一般三角形!"改为:if(a>0&&a<=100)&&(b>0&&b<=100)&&(c>0&&c<=100) if(a!=b&&b!=c&&
15、amp;c!=a)&&(a+b>c&&a+c>b&&b+c>a)cout<<"一般三角形!"测试人修正人确认人修正日期年 月 日 缺陷编号6用例编号1319缺陷类型严重级别严重优先级优先缺陷状态New测试阶段单元 集成 系统 验收 其它( )可重现性是 否BUG原因需求分析 基本设计 详细设计 设计式样理解 编程 数据库设计 环境配置 其它 ( )缺陷描述只输入三角形的一边或两边,程序进入等待的状态,没有提示。预期结果给出提示判断是否为有效的输入重现步骤备注在VC+6.0中运行源程序输入数据如图所
16、示:以下部分由BUG修改人填写缺陷修改描述测试人修正人确认人修正日期年 月 日 2、城市的电话号码由两部分组成。这两部分的名称和内容分别是:1) 地区码:以0开头的三位或者四位数字(包括0);2) 电话号码:以非0、非1开头的七位或者八位数字。假定被调试的程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的号码,就可用等价分类法来设计它的调试用例。等价类表:输入条件有效等价类号码无效等价类号码地区码0以0开头的3位数以0开头的4位数123非数字字符非0开头的3位数非0开头的4位数0开头且少于3位数字0开头且多于4位数字非0开头且少于3位数非0开头且多于4位数6789101112电话号码非
17、0、非1开头的7位数非0、非1开头的8位数45有非数字字符少于7位数多于8位数起始位为0起始位为11314151617请按照上述等价类的划分为此程序设计测试用例,参考答案如下:序号测试数据期望结果覆盖范围实际输出1010 显示有效输入(1)、(8) 无反应 2023 显示有效输入(1)、(7)无反应30851 显示有效输入(2)、(7)无反应40851 显示有效输入(2)、(8)无反应50a34 显示无效输入(3)无反应605 显示无效输入(4)区号错误701234 显示无效输入(5)区号错误82341 显示无效输入(6)区号错误9028 显示无效输入(9)电话号错误10028 显示无效输入(
18、10)电话号错误11028 qw显示无效输入(11)无反应12028 显示无效输入(12)电话号错误13028 显示无效输入(13)电话号错误3NextDate问题NextDate 函数包含三个变量 month、day和year,函数的输出为输入日期后一天的日期。 例如,输入为1989年5月16日,则函数的输出为1989年5月17日。 要求输入变量 month、 day和year均为整数值,并且满足下列条件,也就是有效等价类:1 month12 1day31 1812year2012若条件(1)(3)中任何一个条件失效,则 NextDate 函数都会产生一个输出,指明相应的变量超出取值范围,比
19、如 “month 的值不在 1-12 范围当中”。显然还存在着大量的 year、month、day 的无效组合,我们可以给出下列无效等价类: month<1 month>12 day<1 day>31 year<1812 year>2012 请根据划分好的等价类设计测试用例。有效等价类:month变量的有效等价类:M1: month=4,6,9,11 M2: month=1,3,5,7,8,10 M3: month=12 M4: month=2day变量的有效等价类:D1: 1day27 D2: day=28 D3: day=29 D4: day=30 D5
20、: day=31 year变量的有效等价类:Y1: year是闰年 Y2: year不是闰年无效等价类: M5= 月份:月份<1M6= 月份:月份>12D6= 日期:日期<1D7= 日期:日期>31Y3= 年:年<1812Y4= 年:年>201250等价类表有效等价类无效等价类year是闰年month=4、6、9、111day271month<134day=282month>135day=293day<136day=304day>3137month=1、3、5、7、8、101day275year<181238day=286yea
21、r>201639day=297month<1 day<140day=308month<1 day>3141day=319month>1 day<142month=121day2710month>1 day>3143day=2811month<1year<181244day=2912month<1year>201645day=3013month>1year<181246day=3114month>1year>201647month=21day2715day<1 year<181248
22、day=2816day<1 year>201649day>31 year<181250year不是闰年month=4、6、9、111day2717day>31 year>2016 51day=2818month<1 day<1 year<181252day=2919month>1 day<1 year<181253day=3020month<1 day>31 year<181254month=1、3、5、7、8、101day2721month>1 day>31 year<181255da
23、y=2822month<1 day<1 year>201656day=2923month>1 day<1 year>201657day=3024month<1 day>31 year>201658day=3125month>1 day>31 year>201659month=121day2726Year不是闰年 month=2 day=2960day=2827day=2928Year不是闰年 month=2 day=3061day=3029day=3130Year不是闰年 month=2 day=3162month=21d
24、ay2731Year是闰年 month=2 day=3063day=2832day=2933Year是闰年 month=2 day=3164测试用例设计用例ID月份日期年预期输出覆盖号码141020012001年4月11日1241020042004年4月11日17342820012001年4月29日2442820042004年4月29日18542920012001年4月30日3642920042004年4月30日19743020012001年5月1日4843020042004年5月1日2094312001无效输入37104312004无效输入371111020012001年1月11日51211
25、020042004年1月11日211312820012001年1月29日61412820042004年1月29日221512920012001年1月30日71612920042004年1月30日231713020012001年1月31日81813020042004年1月31日241913120012001年2月1日92013120042004年2月1日2521121020012001年12月11日1022121020042004年12月11日2623122820012001年12月29日1124122820042004年12月29日2725122920012001年12月30日1226122920042004年12月30日2827123020012001年12月31日1328123020042004年12月31日2929123120012002年1月1日1430123120042005年1月1日303121020012001年2月11日153221020042004年2月11日313322820012001年3月1日163422820042004年2月29日32352292001无效输入603622920042004年3月1日33372302001无效输入61382302004无效输入63392312001无效输入62402312004无效输入64专心-专注-专业
限制150内