黑盒测试(功能测试)

一、实验目的

1.掌握等价类划分法;

2.掌握边界值分析法;

3.掌握因果图与决策表法;

4.掌握正交实验设计法。

二、实验内容

1.判断三角形的形状。输入三条边,如果可以构成三角形,进一步判断是否是等腰三角形或等边三角形。请用等价类划分法设计测试用例。

2.输入三个整数a、b、c,分别作为三角形的三条边,通过程序判断这三条边是否能构成三角形?要求输入三个整数a、b、c,必须满足以下条件:1≤a≤100;1≤b≤100;1≤c≤100。请用边界值分析法设计测试用例。

3.现有一份自动饮料售货机软件的规格说明如下:

有一个处理单价为1元5角的盒装饮料的自动售货机软件。若投入1元5角硬币,按下“可乐”、“雪碧”、“红茶”按钮,相应的饮料就送出来。若投入的是2元硬币,在送出饮料的同时退还5角硬币。请画出该说明的因果图,然后采用决策表法为该功能设计测试用例。

4. 在信息系统中,设有3个独立的查询条件:员工号(ID)、员工姓名(Name)、员工邮件地址(Mail Address),以获得特定员工的个人信息。每个条件信息包括3种情况:不填、填上正确内容、填上错误内容。请用正交实验法设计测试用例。(P151思考题8)

实验步骤

1. 等价类法

(1)确定等价类的原则:

① 在输入条件规定了取值范围或值的个数的情况下,可以确立一个有效等价类和两个无效等价类。

② 在输入条件规定了输入值的集合或者规定“必须如何”的条件下,可以确立一个有效等价类和一个无效等价类。

③ 在输入条件是一个布尔量的情况下,可以确定一个有效等价类和一个无效等价类。

④ 在规定了输入数据的一组值(假定 n 个),并且程序要对每一个值分别处理的情况下,可确立 n 个有效等价类和一个无效等价类。

⑤ 在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(不同角度违反规则)。

⑥ 在确知已划分的等价类中,各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步地划分为更小的等价类

(2)等价类法设计测试用例步骤

①划分等价类后,建立等价类表,并为每一个等价类规定一个唯一的编号;

②设计一个测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步骤,直到所有的有效等价类都被覆盖为止;

③设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步骤,直到所有的无效等价类都被覆盖为止。(因为用单个测试用例覆盖无效等价类,是因为某些特定的输入错误会屏蔽或取代其他输入错误检查)

2.边界值法设计测试用例的原则:

① 如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。

② 如果输入条件规定了值的个数,则用最大个数、最小个数、比最小个数少 1 、比最大个数多 1 的数作为测试数据。

③ 根据规则说明的每个输出条件,使用前面的原则 ①。

④ 根据规则说明的每个输出条件,应用前面的原则 ②。

⑤ 如果程序的规格说明给出的输入域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。

⑥ 如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构边界上的值作为测试用例。

⑦ 分析规格说明,找出其他可能的边界条件。

3.决策表(判定表)设计测试用例的步骤:

①确定规则数,条件数为n,规则个数=2n

②列出所有条件桩和动作桩

③填入条件项

④填入动作项

⑤简化判定表,合并相似规则

4.因果图法设计测试用例的步骤:

①分析程序规格说明书的描述中,哪些是原因,哪些是结果,原因常常是输入条件或输入条件的等价类,而结果常常是输出条件。

②分析程序规格说明书中描述的的语义内容,并将其表示成连接各个原因与各个结果的因果图。

③由于语法或环境的限制,有些原因和结果的组合情况是不可能出现的,为表现这些特定的情况,在因果图上使用若干特殊的符号表明约束条件。

④把因果图转化为决策表(判断表)。

⑤为决策表中每一列表示的情况设计测试用例。

5.正交实验设计法设计测试用例的步骤:

①提取因子,构造因子状态表。

②选择一个合适的正交表。

③利用正交表设计测试用例。

实验结果

1.

三角形输入等价类表

要求

有效等价类

编号

无效等价类

编号

输入3个数

输入3个数

1

输入0个数

2

只输入1个数

3

只输入2个数

4

多于3个数

5

3个数是否都是整数

3个数都是整数

6

有一个数小于等于0

7

有两个数小于等于0

8

3个数都小于等于0

9

3个数是否能够构成三角形

任意2个数之和大于第3个数

10

其中2个数之和小于等于3个数

11

3个数是否能构成等腰三角形

其中2个数相等:a=b|b=c|a=c

12

三个数均不相等

13

3个数是否能构成等边三角形

构成等边三角形:a=b=c

14

三个数均不相等

15

有效等价类的测试用例

测试用例

输入3个数

覆盖有效等价类的编号

1

1 2 3

1 6

2

3 4 5

1 6 10

3

6 6 8

1 6 10 12

4

6 6 6

1 6 10 12 14

无效等价类的测试用例

测试用例

输入3个数

覆盖有效等价类的编号

5

-1 -1 -1

9

6

-1 -1 5

8

7

-1 4 5

7

8

输入0个数据

2

9

1

3

10

1 2

4

11

1 3 4

11

12

1 2 3 4

5

13

3 4 5

13

14

3 3 5

15

2.

三角形三条边a,b,c的边界取值是:-1,1,2,50,99,100,101

测试用例

a

b

c

预期输出

1

50

50

-1

输入无效

2

50

50

1

等腰三角形

3

50

50

2

等腰三角形

4

50

50

50

等边三角形

5

50

50

99

等腰三角形

6

50

50

100

非三角形

7

50

50

101

输入无效

8

50

-1

50

输入无效

9

50

1

50

等腰三角形

10

50

2

50

等腰三角形

11

50

99

50

等腰三角形

12

50

100

50

非三角形

13

50

101

50

输入无效

14

-1

50

50

输入无效

15

1

50

50

等腰三角形

16

2

50

50

等腰三角形

17

99

50

50

等腰三角形

18

100

50

50

非三角形

19

101

50

50

输入无效

3.利用因果图法,建立软件的因果图

原因

结果

C1:投入1元5角硬币

E1:送出可乐

C2:投入2元硬币

E2:送出雪碧

C3:按下“可乐”

E3:送出红茶

C4:按下“雪碧”

E4:退还5角硬币

C5:按下“红茶”

状态10是已投币

状态11是已按按钮

对应的因果图如下:

设计测试该软件的全部测试用例

根据因果图得到决策表:

选项\规则

1

2

3

4

5

6

7

8

条件

C1

1

1

1

-

0

0

0

0

C2

0

0

0

-

1

1

1

0

C3

1

0

0

0

1

0

0

-

C4

0

1

0

0

0

1

0

-

C5

0

0

1

0

0

0

1

-

中间

状态

10

1

1

1

1

1

1

1

0

11

1

1

1

0

1

1

1

1

动作

E1

E2

E3

E4

测试用例

投1元5角

按下可乐

投1元5角

按下雪碧

投1元5角

按下红茶

投任意硬币不按按钮

投2元

按下可乐

投2元

按下雪碧

投2元

按下红茶

不投币

按下可乐

再根据决策表设计测试用例:

测试用例编号

输入数据

预期输出

投币

按钮

1

投1元5角

按下可乐

送出可乐

2

投1元5角

按下雪碧

送出雪碧

3

投1元5角

按下红茶

送出红茶

4

任意

不按

未按下按钮

5

投2元

按下可乐

送出可乐,退还5角

6

投2元

按下雪碧

送出雪碧,退还5角

7

投2元

按下红茶

送出红茶,退还5角

8

0

按下任意按钮

提示投入硬币

4.

有3个因子员工号(ID)、员工姓名(Name)、员工邮件地址(Mail Address),每个条件因素有3种情况:不填、填上正确内容、填上错误内容。

因子

状态

A

B

C

员工号

员工姓名

员工邮件地址

1

不填

不填

不填

2

填上正确内容

填上正确内容

填上正确内容

3

填上错误内容

填上错误内容

填上错误内容

正交表

序号

A

B

C

1

不填

不填

不填

2

不填

填上正确内容

填上正确内容

3

不填

填上错误内容

填上错误内容

4

填上正确内容

不填

填上正确内容

5

填上正确内容

填上正确内容

填上错误内容

6

填上正确内容

填上错误内容

不填

7

填上错误内容

不填

填上错误内容

8

填上错误内容

填上正确内容

不填

9

填上错误内容

填上错误内容

填上正确内容

实验总结

对正交表的理解不透彻,设计正交实验表时有些困难。

猜你喜欢

转载自blog.csdn.net/qq_70311894/article/details/133420779