例如,输入为2004年11月29日,则该程序的输出为2000年12月1日。
1)分析各种输入情况,列出为输入变量month、day、year划分的有效等价类。
2)分析程序规格说明,结合以上等价类划分的情况给出问题规定的可能采取的操作(即列出所有的动作桩)。
3)根据(1)和(2),画出简化后的决策表。
案例分析如下:
1) month变量的有效等价类:
M1: {month=4,6,9,11} M2: {month=1,3,5,7,8,10}
M3: {month=12} M4: {month=2}
2)day变量的有效等价类:
D1:{1≤day≤26} D2: {day=27} D3: {day=28} D4: {day=29} D5: {day=30} D6: {day=31}
3)year变量的有效等价类:
Y1: {year是闰年} Y2: {year不是闰年}
4)考虑各种有效的输入情况,程序中可能采取的操作有以下六种:
a1: day+2 a2: day=2 a3: day=1
a4: month+1 a5: month=1 a6: year+1
4.判定表在功能测试中的应用
1)一些软件的功能需求可用判定表表达得非常清楚,在检验程序的功能时判定表也就成为一个不错的工具。如果一个软件的规格说明指出:
I. 当条件1和条件2满足,并且条件3和条件4不满足,或者当条件1、3和条件4满足时,要执行操作1。
II. 在任一个条件都不满足时,要执行操作2。
III. 在条件1不满足,而条件4被满足时,要执行操作3。 根据规格说明得到如下判定表:
文章来源于领测软件测试网 https://www.ltesting.net/