1)被测项目界面

    

 

2)测试用例设计表

    1、等价类

    等价类表:

输入条件

有效等价类

编号 无效等价类 编号
1912~2050 1 非整数 7
小于1912 8
大于2050 9
1~12 2 非整数 10
小于1 11
大于12 12
1,3,5,7,8,10,12

1~31

3 非整数 13
大于31 14

4,6,9,11

1~30

4 小于1 15
大于30 16

闰年2月

1~29

5 大于29 17

非闰年2月

1~28 6 大于28 18

      测试用例表:

编号 涵盖条件 输入 预期输出 实际输出 测试结果
这天 下一天 上一天 这天 下一天 上一天
1 1,2,3 2001 3 31 星期六 2001年04月01日 2001年03月30日 星期六 2001年04月01日 2001年03月30日 通过
2 1,2,4 2013 4 30 星期二 2013年05月01日 2013年04月29日 星期二 2013年05月01日 2013年04月29日 通过
3 1,2,5 2020 2 29 星期六 2020年03月01日 2020年02月28日 星期六 2020年03月01日 2020年02月28日 通过
4 1,2,6 2001 2 28 星期三 2001年03月01日 2001年02月27日 星期三 2001年03月01日 2001年02月27日 通过
5 7 a 1 12 输入有误,请重新输入 无反应 不通过
6 8 1911 7 21 输入有误,请重新输入 年份超出范围 不通过
7 9 2051 2 11 输入有误,请重新输入 年份超出范围 不通过
8 10 1997 0.1 24 输入有误,请重新输入 无反应 不通过
9 11 1976 0 17 输入有误,请重新输入 月份超出范围 不通过
10 12 1986 16 21 输入有误,请重新输入 月份超出范围 不通过
11 13 2022 11 c 输入有误,请重新输入 无反应 不通过
12 14 1955 5 -2 输入有误,请重新输入 日期超出范围 不通过
13 15 1943 8 33 输入有误,请重新输入 日期超出范围 不通过
14 16 1989 6 31 输入有误,请重新输入 星期六 1989年07月02日 1989年06月30日 不通过
15 17 1996 2 30 输入有误,请重新输入 星期五 1996年03月02日 1996年02月29日 不通过
16 18 2003 2 29 输入有误,请重新输入 星期六 2003年03月02日 2003年02月28日 不通过

  

    2、边界值

     边界值表:

输入条件 边界值 编号
1912 1
2050 2
1 3
12 4
1 5
1,3,5,7,8,10,12 31 6
4,6,9,11 30 7
闰年2月 29 8
非闰年2月 28 9

     测试用例表:

 编号 覆盖条件         输入                               预计输出                              实际输出   测试结果
1 1 1911 6 8 输入有误,请重新输入 年份超出范围 不通过
2 1 1912 6 8 星期六 1912年06月09日 1912年06月07日 星期六 1912年06月09日 1912年06月07日 通过
3 2 2050 6 8 星期三 2050年06月09日 2050年06月07日 星期三 1912年06月09日 1912年06月07日 通过
4 2 2051 6 8 输入有误,请重新输入 年份超出范围 不通过
5 3 2000 0 8 输入有误,请重新输入 月份超出范围 不通过
6 3 2000 1 8 星期六 2000年01月09日 2000年01月07日 星期六 2000年01月09日 2000年01月07日 通过
7 4 2000 12 8 星期五 2000年12月09日 2000年12月07日 星期五 2000年12月09日 2000年12月07日 通过
8 4 2000 13 8 输入有误,请重新输入 月份超出范围 不通过
9 5 2000 6 0 输入有误,请重新输入 日期超出范围 不通过
10 5 2000 6 1 星期四 2000年06月02日 2000年05月31日 星期四 2000年06月02日 2000年05月31日 通过
11 6 2000 7 31 星期一 2000年08月01日 2000年07月30日 星期一 2000年08月01日 2000年07月30日 通过
12 6 2000 7 32 输入有误,请重新输入 日期超出范围 不通过
13 7 2000 6 30 星期五 2000年07月01日 2000年06月29日 星期五 2000年07月01日 2000年06月29日 通过
14 7 2000 6 31 输入有误,请重新输入 星期六 2000年07月02日 2000年06月30日 不通过
15 8 2000 2 29 星期二 2000年03月01日 2000年02月28日 星期二 2000年03月01日 2000年02月28日 通过
16 8 2000 2 30 输入有误,请重新输入 星期三 2000年03月02日 2000年02月29日 不通过
17 9 2001 2 28 星期三 2001年03月01日 2001年02月27日 星期三 2001年03月01日 2001年02月27日 通过
18 9 2001 2 29 输入有误,请重新输入 星期四 2001年03月02日 2001年02月28日 不通过

 

    3、决策表

    M1={month=1,3,5,7,8,10}

    M2={month=4,6,9,11}

    M3={month=12}

    M4={month=2}

    D1={1<=day<=27}

    D2={day=28}

    D3={day=29}

    D4={day=30}

    D5={day=31}

    Y1={year是闰年}

    Y2={year不是闰年}

   决策表:

规则\选项

1~3 4 5 6~9 10 11~14 15 16 17 18 19 20 21,22  

 

C1:month在

C2:day在

 

 

 

C3:year在

M1

D1

D2

D3

 

--

M1

D4

 

 

 

--

M1

D5

 

 

 

--

M2

D1

D2

D3

D4

--

M2

D5

 

 

 

--

M3

D1

D2

D3

D4

--

M3

D5

 

 

 

--

M4

D1

 

 

 

--

M4

D2

 

 

 

Y1

M4

D2

 

 

 

Y2

M4

D3

 

 

 

Y1

M4

D3

 

 

 

Y2

M4

D4

D5

 

 

--

 
 
 

 

A1:不可能     Y                 Y Y  
A2:day加1 Y     Y   Y   Y Y          
A3:day复位   Y     Y   Y     Y Y      
A4:month加1   Y     Y         Y Y      
A5:month复位             Y              
A6:year加1             Y              

   测试用例表:

编号 输入 预期输出 实际输出 测试结果
这天 下一天 上一天 这天 下一天 上一天
1~3 2001 4 11 星期三 2001年04月12日 2001年04月10日 星期三 2001年04月12日 2001年04月10日 通过
4 2013 4 30 星期二 2013年05月01日 2013年04月29日 星期二 2013年05月01日 2013年04月29日 通过
5 2014 4 31 输入有误,请重新输入 星期四 2014年05月02日 2014年04月30日 不通过
6~9 2001 3 28 星期三 2001年03月29日 2001年03月27日 星期三 2001年03月29日 2001年03月27日 通过
10 2001 3 31 星期六 2001年04月01日 2001年03月30日 星期六 2001年04月01日 2001年03月30日 通过
11~14 1934 12 21 星期五 1934年12月22日 1934年12月20日 星期五 1934年12月22日 1934年12月20日 通过
15 1934 12 31 星期一 1935年01月01日 1934年12月30日 星期一 1935年01月01日 1934年12月30日 通过
16 1997 2 24 星期一 1997年02月25日 1997年02月23日 星期一 1997年02月25日 1997年02月23日 通过
17 2000 2 28 星期一 2000年02月29日 2000年02月28日 星期一 2000年02月29日 2000年02月28日 通过
18 1986 2 28 星期五 1986年03月01日 1986年02月27日 星期五 1986年03月01日 1986年02月27日 通过
19 2020 2 29 星期六 2020年03月01日 2020年02月28日 星期六 2020年03月01日 2020年02月28日 通过
20 1955 2 29 输入有误,请重新输入 星期二 1955年03月02日 1955年02月28日 不通过
21,22 1943 2 30 输入有误,请重新输入 星期二 1943年03月03日 1943年03月01日 不通过

 

3)测试结论

   用等价类表可能测不出的问题用边界和测试用例可以,三种方法互有长短,能测出不同的错误。如等价类可能取值不同会忽略的小于31在2月小月的边界值问题,在另外两种方法就一点能被测出;输入值错误而输出不符合要求这一项在决策表中无法测出只能用其他两种方法。所以就像老师说的要说测完一个程序是不可能的,所以要尽可能选择合适的方法多的用例尽可能的测出程序更多的bug。

4)给开发同学的建议

    1、第一,可以对输入捕捉异常,能使输入更加规范;

    2、第二,对于错误这次作业统一了输出,应该按需求办事;

    3、最后,小月与二月最大边界值缺少设定,使输出出现错误,应该添加这必要的内容。

posted on 2017-05-11 05:21  lala44  阅读(229)  评论(0编辑  收藏  举报