Black Box Test Case Design Method

判定表驱动法实例3

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

例如,输入为2004年11月29日,则该程序的输出为2000年12月1日。

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

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

3) 根据(1)和(2),画出简化后的决策表。案例分析如下:

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不是闰年}

4) 考虑各种有效的输入情况,程序中可能采取的操作有以下六种:

a1: day+2
a2: day=2
a3: day=1
a4: month+1
a5: month=1
a6: year+1