实验一_黑盒测试法——等价类划分法
- 格式:doc
- 大小:417.00 KB
- 文档页数:17
实验一 黑盒测试法——等价类划分法 实验目的:1.掌握等价类划分的方法
2.掌握按等价类方法设计测试用例 实验内容: 1、请用等价类划分法为三角形问题划分等价类,并设计相应的测试用例,测试下面三角形问题程序,找出缺陷并改正,给出缺陷报告。 #include "iostream.h" void main(){ int a,b,c; cout<<"请输入三角形的三条边(界于1-100之间)"
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<>b&&b<>c&&c<>a)cout<<"一般三角形!"; } 三角形问题:划分等价类 有效等价类 号码 无效等价类 号码
输 入 条 件 输入三个整数
整数 1 a为非整数 一边为非整数 b为非整数 c为非整数 a,b为非整数 两边为非整数 b,c为非整数 a,c为非整数 三边a,b,c均为非整数 12 13 14 15 16 17 18
三个数 2 只给a 只给一边 只给b 只给c 只给a,b 只给两边 只给b,c 只给a,c 给出三个以上 19 20 21 22 23 24 25
非零数 3 a为0 一边为零 b为0 c为0 a,b为0 两边为零 b,c为0 a,c为0 三边a,b,c均为0 26 27 28 29 30 31 32
正数 4 a<0 一边<0 b<0 c<0 a<0且b<0 二边<0 a<0且c<0 b<0且c<0 三边均<0:a<0且b<0且c<0 33 34 35 36 37 38 39
输 出 条 构成一般三角形 a+b>c b+c>a a+c>b 5 6 7 a+b44 45 件 构成等腰三角形 a=b 且两边之 b=c 和大于 a=c 第三边 8 9 10 构成等边三角形 a=b=c 11 测试用例: 1、覆盖有效等价类的测试用例 用例ID a b c 预期输出 覆盖等价类号码 1 2 3 4 5 3 4 5 4 4 5 4 5 5 5 4 5 4 4 4 一般三角形 等腰三角形 等腰三角形 等腰三角形 等边三角形 1—7 1—7,8 1—7,9 1—7,10 1—7,11
2、覆盖无效等价类的测试用例 用例ID a b c 覆盖等价类号码 预期输出 用例ID a b c 覆盖等 价类号码 预期输出
6 7 8 2.5 4 5 3 4.5 5 3 4 5.5 12 13 14 无效输入 无效输入 无效输入 23 24 25 26 0 0 5 3 0 0 0 4 0 0 0 0 29 30 31 32 无效输入 无效输入 无效输入 无效输入
9 10 11 12 3.5 4.5 5 3 4.5 5.5 3.5 4 5.5 3.5 4.5 5.5 15 16 17 18 无效输入 无效输入 无效输入 无效输入 27 28 29 -3 4 5 3 -4 5 3 4 -5 33 34 35 无效输入 无效输入 无效输入
13 14 15 3 4 5 19 20 21 无效输入 无效输入 无效输入 30 31 32 33 -3 -4 5 -3 4 -5 3 -4 -5 -3 -4 -5 36 37 38 39 无效输入 无效输入 无效输入 无效输入 16 17 18 19 3 4 4 5 3 5 3 4 5 6 22 23 24 25 无效输入 无效输入 无效输入 无效输入 34 35 36 37 3 1 5 3 2 5 3 1 1 3 2 1 40 41 42 43 非三角形 非三角形 非三角形 非三角形 20 21 22 0 4 5 3 0 5 3 4 0 26 27 28 无效输入 无效输入 无效输入 38 39 1 4 2 3 4 1 44 45 非三角形 非三角形 缺陷报告: 缺陷编号 1 用例编号 40 缺陷类型 代码错误 严重级别 严重 优先级 优先 缺陷状态 New 测试阶段 □√单元 □ 集成 □ 系统 □ 验收 □ 其它( ) 可重现性 □√是 □否
BUG原因 □需求分析□√ 基本设计□ 详细设计□ 设计式样理解□ 编程 □数据库设计 □ 环境配置□ 其它 ( ) 缺陷描述 程序无法正常执行 预期结果 程序能运行,并且有运行的结果 重现步骤 备注 打开vc++6.0,运行以下源代码。 #include "iostream.h" void main(){ int a,b,c; cout<<"请输入三角形的三条边(界于1-100之间)"<>a>>b>>c; if(a<=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)cout<<"是等边三角形!"; if(a<>b&&b<>c&&c<>a)cout<<"一般三角形!"; } 发现错误,无法执行。
以下部分由BUG修改人填写 缺陷修改描述 将if语句的“<>”改成“!=”
测试人 修正人 确认人 修正日期 年 月 日
缺陷编号 2 用例编号 1 缺陷类型 代码错误 严重级别 严重 优先级 优先 缺陷状态 New 测试阶段 □√单元 □ 集成 □ 系统 □ 验收 □ 其它( ) 可重现性 □√是 □否
BUG原因 □需求分析□√ 基本设计□ 详细设计□ 设计式样理解□ 编程 □数据库设计 □ 环境配置□ 其它 ( ) 缺陷描述 输入正确的三个数,不能进行正确的判断三角形的类型 预期结果 是一般三角形! 重现步骤 备注 1、 在VC++6.0中运行源程序 输入数据如图所示:
以下部分由BUG修改人填写 缺陷修改描述 将以下代码 if(a+b>c||a+c>b||b+c>a)cout<<"a,b,c的值不能构成三角形!"; 改成 if(a+b
测试人 修正人 确认人 修正日期 年 月 日 缺陷编号 3 用例编号 2~4 缺陷类型 严重级别 严重 优先级 优先 缺陷状态 New 测试阶段 □√单元 □ 集成 □ 系统 □ 验收 □ 其它( ) 可重现性 □√是 □否
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 缺陷类型 严重级别 严重 优先级 优先 缺陷状态 New 测试阶段 □√单元 □ 集成 □ 系统 □ 验收 □ 其它( ) 可重现性 □√是 □否
BUG原因 □需求分析□√ 基本设计□ 详细设计□ 设计式样理解□ 编程 □数据库设计 □ 环境配置□ 其它 ( ) 缺陷描述 输入无效数据,不能判定能否构成三角形 预期结果 给出提示判断是否为有效的输入 重现步骤 备注 在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&&c!=a)cout<<"一般三角形!"; }
测试人 修正人 确认人 修正日期 年 月 日 缺陷编号 5 用例编号 40~45 缺陷类型 严重级别 严重 优先级 优先 缺陷状态 New 测试阶段 □√单元 □ 集成 □ 系统 □ 验收 □ 其它( ) 可重现性 □√是 □否
BUG原因 □需求分析□√ 基本设计□ 详细设计□ 设计式样理解□ 编程 □数据库设计 □ 环境配置□ 其它 ( ) 缺陷描述 输入不能构成三角形的有效数据,不能判定是否为三角形 预期结果 不能构成三角形 重现步骤 备注