判定三角形的程序及黑盒白盒测试

黑盒白盒测试

实验报告

学院:计算机科学与工程

专业:软件工程

姓名:张子晗

学号:152210702236

软件测试计划

测试目的

1. 练习并掌握软件测试管理的一般过程与步骤

2. 掌握测试管理的人工过程和能通过相关管理软件实现以下操作:

1) 创建和管理多个测试组和用户

2) 配置测试环境,编写详细测试计划,安排测试进度

3) 实施测试,执行测试

4) 对测试进行评估

测试题目

关于三角形问题的测试

测试方法

1. 对于主题进行黑盒测试,测试内容包括等价类划分测试,边界值分析测试,决策表方法使用。

2. 对于主题进行白盒测试,测试内容包括语句覆盖测试,分支覆盖测试,条件覆盖测试,分支/条件覆盖测试,条件组合覆盖测试以及基本路径测试。

测试资料

1. 黑盒测试

黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。

黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。

2. 白盒测试:

白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,你清楚盒子内部的东西以及里面是如何运作的。"白盒"法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。"白盒"法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。

采用什么方法对软件进行测试呢?常用的软件测试方法有两大类:静态测试方法和动态测试方法。其中软件的静态测试不要求在计算机上实际执行所测程序,主要以一些人工的模拟技术对软件进行分析和测试;而软件的动态测试是通过输入一组预先按照一定的测试准则构造的实例数据来动态运行程序,而达到发现程序错误的过程。在动态分析技术中,最重要的技术是路径和分支测试。

3. 黑盒与白盒测试的比较:

项目

黑盒测试法

白盒测试法

规划

功能的测试

结构的测试

优点

能确保从用户的角度出发进行测试

能从程序内部的特定部位进行覆盖测试

缺点

无法测定程序内部特定部位;当规格说明有误则不能发现问题。

无法检查程序的外部特性;无法对未实现规格说明的程序内部欠缺部分进行测试

应用技术

边界分析法;

等价类划分法;

决策表测试。

语句覆盖,判定覆盖

条件覆盖,判定/条件覆盖

路径覆盖,循环覆盖

模块接口测试

数据整理

测试的所得到的用例实验报告,BUG报告,需要进行反馈和最后的归档,归档的工作按项目计划中所规定的进行。反馈的工作在测试项结束后,整理成测试总结报告后进行,具体的日期在项目计划中有规定。

不同阶段的测试都要重复以上步骤。

三角形问题黑盒测试报告

1. 问题描述:

完成一段程序,要求实现这样的功能。输入三个整数,构成三角形的三条边,输入范围是1-100,判断结果是等腰三角形,等边三角形,不构成三角形或是一般三角形,直角三角形,判断结果均打印输出。

2. 程序代码(c++):

#include

using namespace std;

void main()

{

inta,b,c;

cout<<请输入三条边的长度(1-100)<

cin>>a>>b>>c;

if(a>=1&&b>=1&&c>=1&&a<=100&&b<=100&&c<=100)

{

if(a+b>c&&a+c>b&&b+c>a)

{

cout<<”能够构成三角形

ifa==b&&b==c)

cout<<为等边三角形

else if

((a==b&&a!=c)||(b==c&&c!=a)||(a==c&&a!b))

cout<<”为等腰三角形

else

cout<<为一般三角形

}

else

cout<<不能构成三角形

}

else

cout<<输入的值超出给定范围

}

3. 测试方法:

黑盒测试(等价类划分+边界值分析+决策表方法)

1) 等价类划分

本程序共计有四种可能的输出:一般三角形,等腰三角形,等边三角形,不构成三角形。

输入

有效等价类

编号

无效等价类

编号

a,b,c

边为a,b,c的一般三角形

1

a输入的值超出范围

5

a,b,c

边为a,b,c的等边三角形

2

b输入的值超出范围

6

a,b,c

边为a,b,c的等腰三角形

3

c输入的值超出范围

7

a,b,c

边为a,b,c不能组成三角形

4

2) 边界值分析方法

数值a

0,101

根据题目要求,输入值中1为最小值,100为最大值.于是取刚好小于1的0和刚好大于100的101进行边界值分析。

数值b

0,101

根据题目要求,输入值中1为最小值,100为最大值.于是取刚好小于1的0和刚好大于100的101进行边界值分析。

数值c

1,101

根据题目要求,输入值中1为最小值,100为最大值.于是取刚好小于1的0和刚好大于100的101进行边界值分析。

3) 决策表方法

i. 确定规则个数,本题的决策表共计四个条件。

C1:a,b,c构成三角形?

C2:a=b?

C3:a=c?

C4:b=c?

每个条件可以取两个值,共计有16种规则。

ii. 列出所有的条件桩和动作桩

iii. 输入输入项。

iv. 输入动作项,得到初始决策表。

v. 化简,合并相似规则,最后得到三角形问题的最终决策表。

vi.

规则

选项

规则

1-8

规则

9

规则

10

规则

11

规则

12

规则

13

规则

14

规则

15

规则

16

条件:

C1:a,b,c构成三角形?

C2:a=b?

C3:a=c?

C4:b=c?

N

-

-

-

Y

Y

Y

Y

Y

Y

Y

N

Y

Y

N

Y

Y

Y

N

N

Y

N

Y

Y

Y

N

Y

N

Y

N

N

Y

Y

N

N

N

动作:

A1:非三角形

A2:一般三角形

A3:等腰三角形

A4:等边三角形

A5:不可能

白盒测试(语句覆盖,判定覆盖及基本路径测试方法)

程序的流程图如下

1) 语句覆盖

测试数据

执行路径

预期结果

实际结果

a=100,b=101,

c=120

1

输入的值超出给定范围

输入的值超出给定范围

a=3,b=5,

c=9

2,3

不能构成三角形

不能构成三角形

a=5,b=5,c=5

2,4,5,7

等边三角形

等边三角形

a=5,b=5,c=3

2,4,6,9

等腰三角形

等腰三角形

a=5,b=4,c=6

2,4,6,10,12

一般三角形

一般三角形

2) 判定覆盖

测试数据

执行路径

预期结果

实际结果

a=100,b=101,

c=120

1

输入的值超出给定范围

输入的值超出给定范围

a=3,b=5,

c=9

2,3

不能构成三角形

不能构成三角形

a=5,b=5,c=5

2,4,5,7

等边三角形

等边三角形

a=5,b=3,c=5

2,4,6,9

等腰三角形

等腰三角形

a=5,b=4,c=6

2,4,6,10,12

一般三角形

一般三角形

a=5,b=5,c=3

2,4,5,8

等腰三角形

等腰三角形

a=3,b=5,c=5

2,4,6,10,11

等腰三角形

等腰三角形

3) 路径测试

测试数据

执行路径

预期结果

实际结果

a=100,b=101,

c=120

1

输入的值超出给定范围

输入的值超出给定范围

a=3,b=5,

c=9

2,3

不能构成三角形

不能构成三角形

a=5,b=5,c=5

2,4,5,7

等边三角形

等边三角形

a=5,b=3,c=5

2,4,6,9

等腰三角形

等腰三角形

a=5,b=4,c=6

2,4,6,10,12

一般三角形

一般三角形

a=5,b=5,c=3

2,4,5,8

等腰三角形

等腰三角形

a=3,b=5,c=5

2,4,6,10,11

等腰三角形

等腰三角形

《判定三角形的程序及黑盒白盒测试.doc》
将本文的Word文档下载,方便收藏和打印
推荐:
下载文档
热门推荐
相关推荐