软件测试等价类法net day(含源程序)

  • 格式:doc
  • 大小:35.50 KB
  • 文档页数:5

等价类划分法
输入条件有效类无效类
输入年份1900<Y<2100[1] Y<1900[2]
Y>2100[3]
输入非int[4] 输入月份1<=M<=12[5] M<1[6]
M>12[7]
输入非int[8] 输入日期1<=D<=31[9] D<1[10]
D>31[11]
输入非int[12]
边界值分析法
错误推测法
测试用例:
VC6.0:
#include <stdio.h>
void main()
{
int year=0,month=1,day=1;
printf("请分别输入年月日,以空格隔开。

\n");
scanf("%d%d%d",&year,&month,&day);
if(year<1900||year>2100)
printf("输入不合法!\n");
printf("输入日期为%d年%d月%d日\n",year,month,day);
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
if(day!=31)
printf("下一天为%d年%d月%d日\n",year,month,++day);
else
printf("下一天为%d年%d月1日\n",year,++month);
break;
case 2:
if((year%4==0&&year%100!=0)||year%400==0)
{
if(day>29)
{
printf("输入不合法!\n");
break;
}
if(day!=29)
printf("下一天为%d年%d月%d日\n",year,month,++day);
else
printf("下一天为%d年%d月1日\n",year,++month);
}
else
{
if(day>28)
{
printf("输入不合法!\n");
break;
}
if(day!=28)
printf("下一天为%d年%d月%d日\n",year,month,++day);
else
printf("下一天为%d年%d月1日\n",year,++month);
}
break;
case 4:
case 6:
case 9:
case 11:
if(day!=30)
printf("下一天为%d年%d月%d日\n",year,month,++day);
else
printf("下一天为%d年%d月1日\n",year,++month);
break;
case 12:
if(day=31)
printf("下一天为%d年1月1日\n",++year);
else
printf("下一天为%d年%d月%d日\n",year,month,++day);
break;
}
}。