今天的实验收获:
经典的年月日分析:
一、实验目的:
1、 掌握等价类测试和边界值测试
2、 掌握如何绘制被测程序的等价类表
3、 如何根据等价类表生成测试用例
如何结合边界值和等价类表生成测试用例
1、 场景说明
NextDate函数包含三个变量month、day和year,函数的输出为输入日期后一天的日期。 要求输入变量month、day和year均为整数值,并且满足下列条件:
条件1 1≤ month ≤12;
条件2 1≤ day ≤31;
条件3 1912≤ year ≤2050。
请使用等价类划分法为上述程序设计出相应的测试用例。
2、 功能要求
请结合等价类划分法和边界值分析法为上述程序设计出相应的测试用例。
3、 实现要求
使用等价类划分法和边界值分析法生成测试用例。要求提交的作业文档里,包含:
1、 等价类表
2、 等价类划分法生成的测试用例表
3、 边界值分析法生成的测试用例表
结果与分析
步骤一:分析并绘制等价类表,如下:
|
编号 |
类别 |
有效等价类 |
|
D1 |
<Y,M,D> |
年加1,月复位,日复位 |
|
D2 |
<Y,M,D> |
年不变,月不变,日加1 |
|
D3 |
<Y,M,D> |
年不变,大月加1,日复位 |
|
D4 |
<Y,M,D> |
年不变,非2小月加1,日复位 |
|
D5 |
<Y,M,D> |
年不变,闰年2月加1,日复位 |
|
D6 |
<Y,M,D> |
年不变,非闰年2月加1,日复位 |
步骤二:根据等价类表,利用等价类划分法,给出测试用例如下:
|
ID |
测试输入 |
测试输出 | ||||
|
Y |
M |
D |
Y |
M |
D | |
|
1 |
2000 |
12 |
31 |
2001 |
1 |
1 |
|
2 |
2000 |
1 |
1 |
2000 |
1 |
2 |
|
3 |
2000 |
3 |
31 |
2000 |
4 |
1 |
|
4 |
2000 |
4 |
30 |
2000 |
5 |
1 |
|
5 |
2000 |
2 |
28 |
2000 |
3 |
1 |
|
6 |
1999 |
2 |
27 |
1999 |
3 |
1 |
(2)边界值分析法
步骤一:分析如下:
在NextDate函数中,规定了变量month、day、year的相应取值范围。在上面等价类法设计测试用例中已经提过,具体如下:
M1={month:1≤month≤12}
D1={day:1≤day≤31}
Y1={year:1912≤year≤2050}
步骤二:根据上述分析,利用边界值分析法,给出测试用例如下:
|
测试用例 |
输入 |
期望输出 | ||
|
month |
day |
year | ||
|
Test Case 1 |
-1 |
15 |
2000 |
month不在1~12中 |
|
Test Case 2 |
0 |
15 |
2000 |
month不在1~12中 |
|
Test Case 3 |
1 |
15 |
2000 |
2000年1月16日 |
|
Test Case 4 |
2 |
15 |
2000 |
2000年2月16日 |
|
Test Case 5 |
11 |
15 |
2000 |
2000年11月16日 |
|
Test Case 6 |
12 |
15 |
2000 |
2000年12月16日 |
|
Test Case 7 |
13 |
15 |
2000 |
month不在1~12中 |
|
Test Case 8 |
6 |
-1 |
2000 |
day不在1~31中 |
|
Test Case 9 |
6 |
0 |
2000 |
day不在1~31中 |
|
Test Case 10 |
6 |
1 |
2000 |
2000年6月2日 |
|
Test Case 11 |
6 |
2 |
2000 |
2000年6月3日 |
|
Test Case 12 |
6 |
30 |
2000 |
2000年7月1日 |
|
Test Case 13 |
6 |
31 |
2000 |
不可能的输入日期 |
|
Test Case 14 |
6 |
32 |
2000 |
day不在1~31中 |
|
Test Case 15 |
6 |
15 |
1911 |
year不在1912~2050中 |
|
Test Case 16 |
6 |
15 |
1912 |
1912年6月16日 |
|
Test Case 17 |
6 |
15 |
1913 |
1913年6月16日 |
|
Test Case 18 |
6 |
15 |
2049 |
2049年6月16日 |
|
Test Case 19 |
6 |
15 |
2050 |
2050年6月16日 |
|
Test Case 20 |
6 |
15 |
2051 |
year不在1912~2050中 |
本文介绍了如何运用等价类测试和边界值分析法设计NextDate函数的测试用例。实验目标包括掌握这两种方法,根据等价类表生成测试用例。文中详细阐述了变量month、day和year的取值范围,并提供了等价类表及边界值分析法生成的测试用例。
6220

被折叠的 条评论
为什么被折叠?



