5.8日报

完成软件测试实验二

实验二白盒测试

一、实验目的

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

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

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

二、实验要求

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

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

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

三、实验内容

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

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

l  5、

 

 

程序伪代码

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

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

       3)ERRCODE为出错码

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)  基本路径法绘制出控制流图,逻辑覆盖法绘制出流程图

(2)  设计测试用列表

实验一第一题:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

测试用例表

编号

输入日期

预期结果

路径

覆盖方法

TC1

2023-01-01

Sunday

1→2→3→4→5

语句覆盖、路径覆盖

TC2

2023-12-25

Monday

1→2→3→4→5

语句覆盖、路径覆盖

TC3

2024-02-29

Invalid date

1→2→6

分支覆盖

TC4

2023-13-01

Invalid date

1→2→6

分支覆盖

TC5

2023-01-32

Invalid date

1→2→6

分支覆盖

TC6

2023-01-01

Sunday

1→2→3→4→5

条件覆盖、判定覆盖

TC7

2023-02-28

Tuesday

1→2→3→4→5

条件覆盖、判定覆盖

TC8

2024-02-29

Saturday

1→2→3→4→5

条件组合覆盖

 

 

 

 

 

 

 

 

 

 

实验一第三题:

 
   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

测试用例表:

编号

投币选择

商品选择

预期结果

路径

覆盖方法

TC1

一元

橙汁

橙汁,退回 5 角硬币

1→2→3→4→5

语句覆盖、路径覆盖

TC2

五角

啤酒

啤酒

1→2→3→4→6

语句覆盖、路径覆盖

TC3

橙汁

无效输入:请投币

1→2→7

分支覆盖

TC4

一元

无效输入:请选择商品

1→3→7

分支覆盖

TC5

五角

橙汁

橙汁

1→2→3→4→6

条件覆盖、判定覆盖

TC6

一元

啤酒

啤酒,退回 5 角硬币

1→2→3→4→5

条件覆盖、判定覆盖

TC7

无效输入:请投币

1→2→7

条件组合覆盖

TC8

五角

无效输入:请选择商品

1→3→7

条件组合覆盖

 

实验一 第二题:

 

 
   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

测试用例表:

编号

输入数据

预期结果

测试路径

TC1

R = 50, P = 100

找零组合:1 张 50 元

路径1: 1→2→3→4→5→6→7

TC2

R = 0, P = 100

无效输入:价格和付款必须为整数且在1-100元之间,付款金额不能小于价格

路径2: 1→2→3→4

TC3

R = 50, P = 40

无效输入:价格和付款必须为整数且在1-100元之间,付款金额不能小于价格

路径3: 1→2→3→4→5→8

第四题

 
   

 

 

 

 

 

 

 

 

 

 

 

 

测试用例表:

编号

输入数据

预期结果

测试路径

TC1

航线:欧美,舱位:商务舱,飞行时间:两小时以内

食物供应:有,电影播放:可以

路径 1: 1→2→3→8

TC2

航线:国外非欧美,舱位:商务舱,飞行时间:两小时以内

食物供应:有,电影播放:可以

路径 2: 1→2→4→6→8

TC3

航线:国外非欧美,舱位:经济舱,飞行时间:两小时以内

食物供应:有,电影播放:无

路径 3: 1→2→4→6→9

TC4

航线:国内,舱位:商务舱,飞行时间:两小时以内

食物供应:有,电影播放:无

路径 4: 1→2→5→11→9

TC5

航线:国内,舱位:经济舱,飞行时间:超过两小时

食物供应:有,电影播放:无

路径 5: 1→2→5→7→9

TC6

航线:国内,舱位:经济舱,飞行时间:两小时以内

食物供应:无,电影播放:无

路径 6: 1→2→5→10→12

 

 

 

第五题

判定覆盖:

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

 

 

 

 

 

 

 

 

五、实验体会:

1.遇到了哪些问题

逻辑覆盖法和基本路径法的设计有点摸不到头脑,设计测试用例的时候,总担心有些路径或者条件没考虑到,导致测试不全面。

2.问题如何解决的

过多学习、多练习,画控制流图和流程图的时候,我就一步一步来,先在纸上画草图,再用工具整理,这样就清晰多了。设计测试用例的时候,我学会了先列出所有可能的情况,然后再一个个设计,这样就避免了很多重复的用例。工具使用上,多用几次也就熟悉了,画图速度也提上来了。

3.收获

通过这次实验,我感觉自己收获挺大的。现在对白盒测试的方法理解得更透彻了,能根据程序逻辑设计出比较全面的测试用例。分析程序逻辑的能力也提高了,能更清楚地知道程序是怎么运行的。还学会了怎么优化测试用例,避免重复,提高效率。工具使用也更熟练了,能快速画出控制流图和流程图。遇到问题的时候,也更有经验去解决了,知道怎么查资料、怎么参考案例。总的来说,这次实验不仅让我学到了白盒测试的知识,还提升了我的实际操作能力和解决问题的能力,感觉挺有成就感的。

 

posted @ 2025-05-21 11:18  Code13  阅读(20)  评论(0)    收藏  举报