Nex tData 函数 一、问题描述 程序有三个输入变量month、day 、y ear(month、day 和y ear 均为整数值,并且满足:1≤month≤12、1≤day ≤31、1900≤ y ear ≤2050
),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上下一天的日期
例如,输入为2005 年 11 月 29 日,则该程序的输出为2005 年11 月 30 日
请用黑盒测试方法设计测试用例
二、程序界面 计算下一天的程序代码见附录
三、设计测试用例 1
用边界值测试方法设计测试用例 用健壮性测试法设计测试用例,按照下列步骤进行: (1) 分析各变量的取值 健壮性测试时,各变量分别取:略小于最小值、最小值、略高于最小值、正常值、略低于最大值、最大值和略大于最大值
month:-1,1,2,6,11,12,13; day :-1,1,2,15,30,31,32 y ear:1899,1900,1901,1975,2049,2050,2051; (2) 测试用例数 有n 个变量的程序,其边界值分析会产生6n+1 个测试用例
这里有3 个变量,因此会产生19 个测试用例
(3) 设计测试用例,见表1-1
NextDate 函数的复杂性来源于两个方面:一是输入域的复杂性(即输入变量之间逻辑关系的复杂性),二是确定闰年的规则
但是在进行健壮性测试时,没有考虑输入变量之间的逻辑关系,也没有考虑和闰年相关的问题,因此在设计测试用例时存在遗漏问题,比如和判断闰年相关的日期:2008
29、1999
表1-1NextDate 函数测试用例 用例编号 输入数据 预期输出 mouth day year 1 6 15 1899 year 超出[1900,2050] 2 6 15 1900 1900
16 3 6 15 19