📜  等价类测试 - 下一个日期问题

📅  最后修改于: 2022-05-13 01:57:00.334000             🧑  作者: Mango

等价类测试 - 下一个日期问题

等价类测试(Equivalence class Partitioning)是一种在软件测试中使用的黑盒测试技术,是软件开发生命周期(SDLC)的主要步骤。这种测试技术在时间消耗和测试用例精度方面优于许多测试技术,如边界值分析、最坏情况测试、稳健情况测试等。由于进行测试是为了识别可能的风险,因此等价类测试比其他技术表现得更好,因为使用它生成的测试用例在逻辑上被标识为具有分区之间的分区以创建不同的输入和输出类。这可以从如下所述的下一个日期问题中看出:

给定日-月-年格式的一天,您需要找到给定日期的下一个日期。为此执行边界值分析和等价类测试。

状况 :

D:  1

边界值分析:

No. of test Cases (n = no. of variables) = 4n+1 = 4*3 +1 =13 

测试用例:

Test Case IDDayMonthYearExpected Output
11620002-6-2000
22620003-6-2000
3156200016-6-2000
430620001-7-2000
53162000Invalid Date
6151200016-1-2000
7152200016-2-2000
81511200016-11-2000
91512200016-12-2000
10156180016-6-1800
11156180116-6-1801
12156204716-6-2047
13156204816-6-2048

等价类测试:

输入类:

Day:
D1: day between 1 to 28
D2: 29
D3: 30 
D4: 31
Month:
M1: Month has 30 days
M2: Month has 31 days
M3: Month is February
Year:
Y1: Year is a leap year
Y2: Year is a normal year 

输出类:

Increment Day
Reset Day and Increment Month
Increment Year
Invalid Date

强正态等价类测试用例:

测试用例:

Test Case IDDayMonthYearExpected Output
E1154200416-4-2004
E2154200316-4-2003
E3151200416-1-2004
E4151200316-1-2003
E5152200416-2-2004
E6152200316-2-2003
E7294200430-4-2004
E8294200330-4-2003
E9291200430-1-2004
E10291200330-1-2003
E1129220041-3-2004
E122922003Invalid Date
E1330420041-5-2004
E1430420031-5-2003
E15301200431-1-2004
E16301200331-1-2003
E173022004Invalid Date
E183022003Invalid Date
E193142004Invalid Date
E203142003Invalid Date
E2131120041-2-2004
E2231120031-5-2003
E233122004Invalid Date
E243122003Invalid Date

因此,从这个问题可以清楚地看出,等价类测试清楚地检查了许多没有考虑边界值的情况,例如有 28-29 天的 2 月、导致 2 月天数变化的闰年等等。

因此,上面的例子证明了等价划分产生了更有效的测试用例,在风险评估期间应该考虑这些用例。