第1次作业+105032014040
被测代码地址:http://www.cnblogs.com/xwhisper/p/6532851.html
1、流程图:
2、测试用例设计:
覆盖方式 | 用例号 | 输入 | 期待结果 | ||||
语句覆盖 | 1 | 2051 3 21 | 年份超出范围 | ||||
语句覆盖 | 2 | 2050 13 21 | 月份超出范围 | ||||
语句覆盖 | 3 | 2050 3 32 | 日期超出范围 | ||||
语句覆盖 | 4 | 2050 2 28 | 2050 3 1 | ||||
语句覆盖 | 5 | 2050 4 30 | 2050 5 1 | ||||
语句覆盖 | 6 | 2050 12 31 | 2051 1 1 | ||||
判定覆盖 | 7 | 1914 4 21 | 年份超出范围 | ||||
判定覆盖 | 8 | 1915 4 21 | 1915 4 22 | ||||
判定覆盖 | 9 | 1915 13 21 | 月份超出范围 | ||||
判定覆盖 | 10 | 1915 12 21 | 1915 12 22 | ||||
判定覆盖 | 11 | 1915 2 32 | 日期超出范围 | ||||
判定覆盖 | 12 | 1915 2 30 | 日期超出范围 | ||||
判定覆盖 | 13 | 2000 2 29 | 2000 3 1 | ||||
判定覆盖 | 14 | 2000 3 30 | 2000 3 31 | ||||
判定覆盖 | 15 | 2000 3 31 | 2000 4 1 | ||||
判定覆盖 | 16 | 2000 3 21 | 2000 3 22 | ||||
判定覆盖 | 17 | 2000 12 31 | 2001 1 1 | ||||
判定覆盖 | 18 | 2000 4 21 | 2000 4 22 |
3、测试结果:
覆盖方式 | 用例号 | 输入 | 期待结果 | 实际结果 | 通过 | 时间 | ||||||
语句覆盖 | 1 | 2051 3 21 | 年份超出范围 | 年份超出范围 | √ | 2017.03.23 | ||||||
语句覆盖 | 2 | 2050 13 21 | 月份超出范围 | 月份超出范围 | √ | 2017.03.23 | ||||||
语句覆盖 | 3 | 2050 3 32 | 日期超出范围 | 日期超出范围 | √ | 2017.03.23 | ||||||
语句覆盖 | 4 | 2050 2 28 | 2050 3 1 | 2050 3 1 | √ | 2017.03.23 | ||||||
语句覆盖 | 5 | 2050 4 30 | 2050 5 1 | 2050 5 1 | √ | 2017.03.23 | ||||||
语句覆盖 | 6 | 2050 12 31 | 2051 1 1 | 2051 1 1 | √ | 2017.03.23 | ||||||
判定覆盖 | 7 | 1914 4 21 | 年份超出范围 | 年份超出范围 | √ | 2017.03.23 | ||||||
判定覆盖 | 8 | 1915 4 21 | 1915 4 22 | 1915 4 22 | √ | 2017.03.23 | ||||||
判定覆盖 | 9 | 1915 13 21 | 月份超出范围 | 月份超出范围 | √ | 2017.03.23 | ||||||
判定覆盖 | 10 | 1915 12 21 | 1915 12 22 | 1915 12 22 | √ | 2017.03.23 | ||||||
判定覆盖 | 11 | 1915 2 32 | 日期超出范围 | 日期超出范围 | √ | 2017.03.23 | ||||||
判定覆盖 | 12 | 1915 2 30 | 日期超出范围 | 1915 2 31 | × | 2017.03.23 | ||||||
判定覆盖 | 13 | 2000 2 29 | 2000 3 1 | 2000 3 1 | √ | 2017.03.23 | ||||||
判定覆盖 | 14 | 2000 3 30 | 2000 3 31 | 2000 3 31 | √ | 2017.03.23 | ||||||
判定覆盖 | 15 | 2000 3 31 | 2000 4 1 | 2000 4 1 | √ | 2017.03.23 | ||||||
判定覆盖 | 16 | 2000 3 21 | 2000 3 22 | 2000 3 22 | √ | 2017.03.23 | ||||||
判定覆盖 | 17 | 2000 12 31 | 2001 1 1 | 2001 1 1 | √ | 2017.03.23 | ||||||
判定覆盖 | 18 | 2000 4 21 | 2000 4 22 | 2000 4 22 | √ | 2017.03.23 |
测试不通过,程序测试过程中出现了实际结果与期待结果不相符的情况。所以判断程序还是有错误,需要修改。
4、代码优化建议:
该代码基本符合编码规则所需的正确性、稳定性、可读性的要求。
程序出现错误的地方在对于2月份日期的判定上,以“2000 2 30”的输入语句符合年月日的三个输入条件,但是这并不是一个
正确的日期,所以需要在“判断是否是闰年以及二月的最后一天的情况”这一判断模块中添加一个检查日期是否超出范围的判定。