黑盒测试:NextDate的决策表法及测试用例设计

黑盒测试:NextDate的决策表法及测试用例设计

 

该程序有三个输入变量month、day、year(month、day和year均为整数值,并且满足:1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。

(1)分析各种输入情况,列出为输入变量month、day、year划分的有效等价类。

① month变量的有效等价类:

    M1: {month=4,6,9,11}     M2: {month=1,3,5,7,8,10}

    M3: {month=12}              M4: {month=2}

② day变量的有效等价类:

     D1: {1≤day≤26}         D2: {day=27}        D3: {day=28}                    D4: {day=29}             D5: {day=30}        D6: {day=31}

③ year变量的有效等价类:

     Y1:  {year是闰年}             Y2:  {year不是闰年}

(2)分析程序规格说明,结合以上等价类划分的情况给出问题规定的可能采取的操作(即列出所有的动作桩)。

     动作桩: A1: day+1         A2: day=1         A3: month+1           A4: month=1          A5: year+1        A6:不可能

(3)根据条件桩和动作桩,画出决策表。

 

规则1

规则2

规则3

规则4

规则5

规则6

规则7

规则8

规则9

规则10

规则11

M1

M1

M1

M2

M2

M3

M3

M4

M4

M4

M4

D1/D2/D3/D4

D5

D6

D1/D2/D3/D4/D5

D6

D1/D2/D3/D4/D5

D6

D1/D2/D3

D4

D4

D4/D5/D6

Y1/Y2

Y1/Y2

Y1/Y2

Y1/Y2

Y1/Y2

Y1/Y2

Y1/Y2

Y1/Y2

Y1

Y2

Y1/Y2

动作

A1

A3A2

A6

A1

A3,A2

A1

A5,A4A2

A1

A3A2

A6

A6

 

(4)根据(1)和(2),画出简化后的决策表。

 

规则1468

规则259

规则31011

规则7

M1M2M3M4

M1M2M4

M1M4

M3

D1D2D3D4

D5

D6

D6

Y1Y2

Y1Y2

Y1Y2

Y1Y2

动作

A1

A3A2

A6

A5A4A2

 

(5)根据决策表设计测试用例,得到测试用例表

NextDate函数的决策表测试用例

测试用例编号

月份

日期

预期输出

实际输出

1--3

4

15

2011

2011415

请输入日期:年   月  日

2011 4 15

下一天是: 2011-4-16

4

4

30

2011

2011511

请输入日期:年   月  日

2011 4 30

下一天是: 2011-4-30

6

4

31

2011

不可能

请输入日期:年   月  日

2011 4 31

错误每年246911月份,每月天数小于 31!

6--9

1

15

2011

2011116

请输入日期:年   月  日

2011 1 15

下一天是: 2011-1-16

10

1

31

2011

201121

请输入日期:年   月  日

2011 1 31

下一天是: 2011-2-1

11--14

12

15

2011

20111216

请输入日期:年   月  日

2011 12 15

下一天是: 2011-12-16

15

12

31

2011

201111

请输入日期:年   月  日

2011 12 31

下一天是: 2011-1-1

16

2

15

2011

2011216

请输入日期:年   月  日

2011 2  15

下一天是: 2011-2-16

17

2

28

2012

2012229

请输入日期:年   月  日

2011 2 28

下一天是: 2012-2-29

18

2

28

2011

201131

请输入日期:年   月  日

2011 2 28

下一天是: 2011-3-1

19

2

29

2012

201231

请输入日期:年   月  日

2011 2 29

下一天是: 2012-3-1

20

2

29

2011

不可能

请输入日期:年   月  日

2011 2 29

错误!非闰年二月必须小于 29 !

21,22

2

30

2011

不可能

请输入日期:年   月  日

2011 2 30

错误!非闰年二月必须小于 29 !

 

你可能感兴趣的:(测试)