实验项目名称:实验二白盒测试          

一、实验目的

1、 掌握白盒测试的基础知识;

2、 掌握白盒测试的检查内容及测试目的;

3、 掌握黑盒测试的几种基本测试方法:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖、路径覆盖。

二、实验要求

1、 复习有关内容,理解白盒测试;

2、 掌握语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖、路径覆盖,并能设计出测试用例;

3、 对具体软件,能分别使用相应的白盒测试方法设计测试用例,并实施测试、分析测试结果。

三、实验内容

对实验一1、3题使用逻辑覆盖法进行测试用例设计。

对实验一2、4题使用基本路径法进行测试用例设计。

程序伪代码

注意: 1)参数表中EMPTAB 为职员表,DEPTTAB为部门表;

   2 ) ESIZE为职员表长度,DSIZE为部门表长度;

       3ERRCODE为出错码

 

MAXSALERS = 0;

ERRCODE = 0;

if(ESIZE <= 0 || DSIZE <= 0)

ERRCODE = 1;

else

{

for(i = 1; i < DSIZE ; i++) //选出各部门中最大的销售额值

if(SALES[i] > MAXSALES)

MAXSALES = SALES[i];

for(j = 1; j < DSIZE; j++) //循环找出销售额最大的部门

if(SALES[j] == MAXSALES)

{

FOUND = false;

for(int k = 1; k < ESIZE ; k++) //检查销售额最大部门的所有人员

if(EMPTAB.DEPT(k) == DEPTTAB.DEPT(j))

{

FOUND = true;

if(SALARY(k) >= 15000.00 or JOB(k) = 'M') //满足条件的人员加工资

SALARY(k) = SALARY(k) + 100.00;

else

SALARY(k) = SALARY(k) + 200.00;

}

if(FOUND == false)

ERRCODE == 2;

}

}

 

 

 

采用判定覆盖、条件覆盖对该程序进行用例设计

 

四、实验结果:

(1) 基本路径法绘制出控制流图,逻辑覆盖法绘制出流程图

逻辑覆盖法

实验1

程序流程图

 

 

 

控制流图

 

 

 

测试用例图

语句覆盖

输入

测试路径

测试结果

Year

Month

Day

a

11

30

1-2-3-17

输入日期无效

2023

3

28

1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16-17

星期一

 

条件覆盖

输入

测试路径

测试结果

Year

Month

Day

a

11

30

1-2-3-17

输入日期无效

2001

a

12

1-2-3-4-5-17

输入日期无效

2022

9

b

1-2-3-4-5-6-7-17

输入日期无效

3000

10

1

1-2-3-4-5-6-7-8-17

输入日期无效

2020

14

4

1-2-3-4-5-6-7-8-9-17

输入日期无效

2021

1

32

1-2-3-4-5-6-7-8-9-10-17

输入日期无效

2008

2

30

1-2-3-4-5-6-7-8-9-10-11-17

输入日期无效

2009

2

29

1-2-3-4-5-6-7-8-9-10-11-12-17

输入日期无效

2022

1

32

1-2-3-4-5-6-7-8-9-10-11-12-13-17

输入日期无效

2023

6

31

1-2-3-4-5-6-7-8-9-10-11-12-13-14-17

输入日期无效

2023

3

28

1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16-17

星期一

 

路径覆盖

输入

测试路径

测试结果

Year

Month

Day

a

11

30

1-2-3-17

输入日期无效

2001

a

12

1-2-3-4-5-17

输入日期无效

2022

9

b

1-2-3-4-5-6-7-17

输入日期无效

3000

10

1

1-2-3-4-5-6-7-8-17

输入日期无效

2020

14

4

1-2-3-4-5-6-7-8-9-17

输入日期无效

2021

1

32

1-2-3-4-5-6-7-8-9-10-17

输入日期无效

2008

2

30

1-2-3-4-5-6-7-8-9-10-11-17

输入日期无效

2009

2

29

1-2-3-4-5-6-7-8-9-10-11-12-17

输入日期无效

2021

1

32

1-2-3-4-5-6-7-8-9-10-11-12-13-17

输入日期无效

2022

4

31

1-2-3-4-5-6-7-8-9-10-11-12-13-14-17

输入日期无效

2023

3

28

1-2-3-4-5-6-7-8-9-10-11-12-13-14-15-16-17

星期一

实验3

程序流程图

 

 

 

控制流图

 

 

 

测试用例图

语句覆盖/条件覆盖

输入

测试路径

测试结果

Button1

Button2

e

1

1-2-3-10

输入无效

2

1

1-2-3-4-5-6-11-9

取走啤酒

2

2

1-2-3-4-5-6-7-12-9

取走橙汁

1

1

1-2-3-4-5-6-7-8-13-9

取走啤酒,找零五角

1

2

1-2-3-4-5-6-7-8-14-9

取走橙汁,找零五角

 

路径覆盖

输入

测试路径

测试结果

Button1

Button2

e

1

1-2-3-10

输入无效

2

1

1-2-3-4-5-6-11-9

取走啤酒

2

2

1-2-3-4-5-6-7-12-9

取走橙汁

1

1

1-2-3-4-5-6-7-8-13-9

取走啤酒,找零五角

1

2

1-2-3-4-5-6-7-8-14-9

取走橙汁,找零五角

1

e

1-2-3-5-10

输入无效

基本路径法

实验2

控制流图

 

 

 

计算复杂度V(G)

判定节点数(4)+1=5

测试用例

基本路径法(5)

输入

测试路径

测试结果

商品价格

支付金额

e

99

1-2-7

输入无效

99

a

1-2-3-7

输入无效

32

999

1-2-3-4-7

输入无效

20

10

1-2-3-4-5-7

输入无效

30

64

1-2-3-4-5-6

14

50

103

500

 

实验4

控制流图

 

 

 

计算复杂度V(G)

判定节点数(8)+1=9

测试用例

基本路径法(9)

输入

测试路径

测试结果

航线

舱位

飞行时间

e

1

2

1-2-10

输入无效

1

e

2

1-2-3-10

输入无效

1

2

e

1-2-3-4-10

输入无效

1

2

2

1-2-3-4-5-11

食物供应,播放电影

2

1

1

1-2-3-4-5-6-12

食物供应,播放电影

2

2

1

1-2-3-4-5-6-7-13

食物供应

3

1

2

1-2-3-4-5-6-7-8-14

食物供应

3

2

2

1-2-3-4-5-6-7-8-9-15

食物供应

3

2

1

1-2-3-4-5-6-7-8-9-16

 

(2) 设计测试用列表

判定覆盖

1.输入表格

Employee Table

NAME

JOB CODE

DEPT

Salary

A

E

1

10000

B

E

1

9000

C

M

1

16000

D

E

1

15000

E

E

2

15000

F

E

2

15000

Department Table

DEPT

SALES

1

50000

2

30000

输出为0

2.输入表格

Employee Table

NAME

JOB CODE

DEPT

Salary

 

 

 

 

Department Table

DEPT

SALES

 

 

输出为1

3.输入表格

Employee Table

NAME

JOB CODE

DEPT

Salary

A

E

2

15000

B

E

2

15000

Department Table

DEPT

SALES

1

50000

2

30000

输出为2

条件覆盖

1.输入表格

Employee Table

NAME

JOB CODE

DEPT

Salary

A

E

1

10000

B

E

1

9000

C

M

1

16000

D

E

1

15000

E

E

2

15000

F

E

2

15000

Department Table

DEPT

SALES

1

50000

2

30000

输出为0

2.输入表格

Employee Table

NAME

JOB CODE

DEPT

Salary

A

E

1

12000

Department Table

DEPT

SALES

 

 

输出为1

3.输入表格

Employee Table

NAME

JOB CODE

DEPT

Salary

A

E

2

15000

B

E

2

15000

Department Table

DEPT

SALES

1

50000

2

30000

输出为2

五、实验体会:

posted on 2023-03-20 19:49  辰逸1  阅读(123)  评论(0编辑  收藏  举报