azure011328

导航

 

     

 

 

     
   

            

 

实验项目名称:实验二          

一、 实验目的

  1. 掌握白盒测试的基础知识;
  2. 掌握白盒测试的检查内容及测试目的;
  3. 掌握黑盒测试的几种基本测试方法:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖、路径覆盖。

 

二、 实验内容

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

 

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

l 5、

 

 

程序伪代码

注意: 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、3题使用逻辑覆盖法进行测试用例设计。

1. 日期转星期几函数测试

程序流程图

 

 

控制流图

 

判定覆盖

用例ID

输入日期

预期输出

覆盖的判定条件

TC1

2023-01-01

星期日

合法日期

TC2

2023-02-29

无效日期

非法日期(非闰年229日)

TC3

2023-00-15

无效日期

月份不在1-12范围内

TC4

2023-13-15

无效日期

月份不在1-12范围内

TC5

2023-04-00

无效日期

日期不在1-31范围内

TC6

2023-04-31

无效日期

日期不在1-30范围内(4月只有30天)

TC7

2020-02-29

星期六

合法闰年日期

 

条件覆盖

用例ID

输入日期

预期输出

 

覆盖的条件组合

TC8

2023-04-15

星期六

合法日期,非闰年

 

 

TC9

2024-02-29

星期四

合法闰年日期

 

 

TC10

2023-04-31

无效日期

小月31

TC11

2023-02-28

星期二

非闰年2月最后一天

TC12

2023-06-15

星期四

30天的月份

TC13

2023-07-15

星期六

31天的月份

TC14

0001-01-01

星期一

边界值(最小日期)

TC15

9999-12-31

星期五

边界值(最日期)

 

3饮料自动售货机测试

程序流程图

 

控制流图

 

判定覆盖

用例ID

投币金额

选择商品

 

预期结果

覆盖的判定条件

TC1

5

啤酒

出货啤酒

5+啤酒

TC2

5

橙汁

出货橙汁

5+橙汁

TC3

1

啤酒

出货啤酒并找零5

 

1+啤酒

TC4

1

橙汁

出货橙汁并找零5

1+橙汁

TC5

2

啤酒

提示投币不足


无效投币金额

 

TC6

5

无选择

提示选择商品

未选择商品

 

条件覆盖

用例ID

 

投币金额

选择商品

预期结果

覆盖的条件组合

 

TC7

5

啤酒

出货啤酒

最小金额+第一种商品

TC8

5

橙汁

出货橙汁

最小金额+第二种商品

TC9

1

啤酒

出货啤酒并找零5

最大金额+第一种商品

TC10

1

橙汁

出货橙汁并找零5

最大金额+第二种商品

TC11

0

啤酒

提示投币不足

零金额

TC12

2

橙汁

出货橙汁并找零1.5

超额投币

TC13

5

无选择

提示选择商品

有效金额但未选择商品

TC14

1

无选择

提示选择商品

有效金额但未选择商品

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

2. 找零钱最佳组合

控制流图

 

基本路径法

基本路径法

 

输入

测试路径

测试结果

商品价格

支付金额

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

 

1元4张

5元0张

10元3张

50元0张

 

4. 航空服务查询

控制流图

 

基本路径法

输入

测试路径

测试结果

航线

舱位

飞行时间

 

 

 

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

 

 

 

 

5.

 

判定覆盖

1.输入表格

Employee Table

NAME


JOB CODE

DEPT

Salary

A

E

1

10000

B

E

1

90000

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.输入表格

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 2025-06-11 08:53  淮竹i  阅读(11)  评论(0)    收藏  举报